セキュリティ
Wizの研究者が、シークレットを盗み出すサプライチェーン攻撃を発見しました
正体不明の攻撃者が、Quboleに紐づくAWSアカウントの侵害されたID・アクセス管理(IAM)認証情報を使って顧客のAWS環境にアクセスし、S3バケットからシークレットなどの機密データを盗み出しました。
Quboleはクラウド型のデータ処理プラットフォームです。クロスアカウントのIAMロールを利用し、顧客にAWSの長期アクセスキーを提供させることなく、顧客のAWS環境でコンピューティングの管理やストレージへのアクセスを行っています。今回のサプライチェーン攻撃は、このサードパーティとのクロスアカウントの信頼関係を悪用したものです。
Googleのクラウドセキュリティ部門であるWizは、影響を受けた組織の数については明らかにしませんでした。ただし、この攻撃を「広範かつ無差別的なサプライチェーンキャンペーン」と位置づけ、「複数の」顧客環境が被害に遭ったとしています。
「多くの組織が、プラットフォームの利用をやめた後も信頼ポリシーを有効なまま放置していました。そのため攻撃者は連携ロールの引き受けに成功し、クラウドリソースの列挙、シークレットの収集、データの吸い出しを行うことができました」と、研究者らは質問に対するメールの回答でThe Registerに語りました。
AWSとQuboleは、The Registerの問い合わせに回答していません。
AIデータセキュリティ企業のSentraが不審なアクティビティを検知したことを受け、WizはGoogleのMandiantのインシデント対応担当者と協力して調査を進めました。その結果、悪意あるアクティビティは10月14日にさかのぼることが判明しました。この日、Quboleに紐づくAWSアカウントの認証情報を使ってsts:AssumeRole APIが呼び出され、顧客管理の連携ロール用の一時的な認証情報が取得されていました。
呼び出しはQuboleのAWSアカウント805246085872から行われ、IAMユーザーID AIDA3W7DIFLYOLTK63SFSが使われていました。Wizのアナリストであるザック・モロー(Zack Morrow)氏、ショーン・ジョンストン(Sean Johnstone)氏、ベンジャミン・リード(Benjamin Read)氏は、このサプライチェーン攻撃に関する月曜日付のブログで次のように述べています。「影響を受けた環境全体を通じて、Wiz CIRTはこのIAMユーザーが、この攻撃者に関連するもの以外のアクティビティに使われた形跡を確認していません」
このアクティビティは10月15日も続きました。10月18日には、侵入者が同じアカウントの2つ目のIAMユーザーを使い始めました。
顧客環境に侵入した攻撃者は、数多くのAWSサービスを探りながら、Lambda、Secrets Manager、SSM Parameter Storeに保存された認証情報、キー、その他のシークレットを盗み出しました。
さらに攻撃者はTruffleHogを使い、被害組織のAWS認証情報を検証しました。これによりMicrosoft Entra IDのシークレットを突き止めたほか、AWS環境内を探る中で見つけたOktaのクライアント認証情報を使ってOAuthトークンを要求していました。
連携ロールを悪用することで、攻撃者は顧客のS3ストレージからデータを盗むこともできました。ただし、特定のデータを狙う国家支援のスパイというより、場当たり的な攻撃者だったようです。バケット全体をダウンロードした例もありました。
脅威ハンターらは、このサプライチェーン攻撃を特定のグループによるものとは断定していません。盗まれたデータを攻撃者がどのように利用しているかについても、把握していないとしています。
Wizはこのインシデントの調査中、10月8日から10月11日にかけて、Quboleとの連携で顧客が所有するAWSアクセスキーを使った別のキャンペーンも確認しました。このうち「少数」では、侵入者が被害組織のAWS環境を侵害するに至っています。ただしWizは、2つの悪意あるアクティビティを結びつける確証は得られないとしています。
Quboleと連携していた組織は、認証情報をローテーションすべきです。ただし、認証情報をローテーションしても、すでに発行された一時セッションは終了しません。
顧客は、10月1日以降のCloudTrailも確認する必要があります。userIdentity.accountIdがQuboleのAWSアカウントID(805246085872)と一致するAssumeRoleイベント、特にAWS以外のIPアドレスから発信されたものを探してください。
「見つかったロールセッションごとに、そのセッションによる以降のすべてのアクティビティを確認してください。特にSecrets Manager、SSM Parameter Store、Lambda、S3が対象です」と研究者らは書いています。「攻撃者が連携ロールを引き受けていた場合は、そのロールが読み取れたすべてのシークレット、パラメータ、Lambda環境変数をローテーションし、ロールのアクティブなセッションを無効化してください」®