
クラウドデータ処理サービス「Qubole」のAWS連携が悪用され、複数の顧客環境から認証情報や保存データが盗まれました。攻撃者はQuboleに関連するAWSアカウントの認証情報を使い、顧客が連携用に設けたアクセス権限を取得しており、2026年10月14日から26日まで活動が観測されました。利用されなくなった連携にも信頼設定が残り、不正アクセスを受け入れる状態でした。
顧客が残した連携用ロールから侵入
調査は、データセキュリティ企業Sentraが複数の顧客環境で不審な活動を検知し、クラウドセキュリティ企業Wizに共有したことをきっかけに始まりました。WizはSentraと、インシデント対応を担うMandiantと協力して調査しました。
Quboleは、AWSの認証・権限管理機能であるIAMの「クロスアカウントロール」を利用します。これは顧客のAWSアカウントに作成した権限を、別のAWSアカウントから一時的に利用できる仕組みで、顧客が長期利用するアクセスキーを渡さずに、計算資源やストレージの管理を委ねられます。
攻撃者は、Quboleが顧客環境への接続に使用するAWSアカウント「805246085872」から、ロールを引き受けるためのAPI「sts:AssumeRole」を呼び出しました。10月14日に最初の活動が観測され、10月18日には同じアカウントの別のIAMユーザーも使用されました。
攻撃者が引き受けたロールの大半は、ほかの用途で使われていませんでした。Wizが観測した環境の過半数では、10月中にその連携先アカウントから行われたAssumeRoleの呼び出しは攻撃者によるものだけでしたが、信頼設定が残っていたため要求は成功しました。
信頼ポリシーと権限ポリシーが決めるアクセス
今回悪用されたロールには、誰が利用できるかを定める「信頼ポリシー」と、利用後に何を操作できるかを定める「権限ポリシー」があります。連携先のアカウントや必要な条件が信頼ポリシーに一致すると、一時認証情報が発行され、権限ポリシーで許可された資源や操作にアクセスできます。
連携先が複数の顧客を扱う場合には、顧客ごとに異なる「External ID」を要求条件に加える仕組みもあります。これは、別の顧客が他人のロールを指定し、連携先を誤って動作させる「混乱した代理問題」を防ぐための識別子です。
今回、Wizが攻撃者のものと特定したAssumeRole要求には、すべてExternal IDが含まれ、すべて成功していました。External IDはAWS上で秘密情報として扱われるものではなく、ロールを閲覧する権限があれば参照できます。
AWS内の秘密情報を集め、外部サービスの認証にも使用
侵入後、攻撃者はストレージ、計算資源、データベース、IAMロールや暗号鍵などを広く調べました。秘密情報の収集先には、プログラムを実行するLambdaの環境変数、秘密情報を管理するSecrets Manager、設定値などを保存するSSM Parameter Storeが含まれます。
見つけた認証情報の検証には、秘密情報の検出・検証ツール「TruffleHog」が使われました。攻撃者は顧客組織のAWSアクセスキーを検証したほか、MicrosoftのID管理サービス「Entra ID」のアプリケーション用認証情報でサインインし、ID管理サービス「Okta」のクライアント認証情報を使ってOAuthトークンを要求しました。
Entra IDで使われるクライアント認証情報による認証は、ユーザーの操作を伴わず、アプリケーション自身の認証情報で別のサービスに接続する方式です。アクセス先は、アプリケーションに付与された権限やアクセス制御に基づいて操作を許可します。アプリケーション権限は特定のユーザーの代理としてではなく、管理者の承認によってアプリケーション自体に与えられます。
データ保管サービスS3からは、利用可能な保存領域であるバケットや、その中のデータを列挙した後、ダウンロードが行われました。1回のセッションでバケット全体を取得した例もありました。Wizは、特定のデータを狙うよりも、取得可能なデータを広く持ち出す機会を捉えた攻撃だったとみています。
また、10月8日から11日には、Qubole連携用とみられる顧客所有のAWSアクセスキーを使った別の不正活動もあり、一部の環境が侵害されました。Wizは、この活動と10月14日以降のロール悪用を結び付けられていないとしています。
認証情報の更新と既存セッションの無効化
Wizは対応策として、Qubole連携用ロールを持つ各アカウントで、2026年10月1日以降の操作記録を調べることを挙げています。対象はAWSの操作を記録するCloudTrailで、連携先アカウントからのAssumeRole、特にAWS以外のIPアドレスを送信元とする要求や、そのセッションによる秘密情報・S3へのアクセスです。
S3でのデータ持ち出しを追跡するには、個々のデータへのアクセスを記録するCloudTrailのS3データイベント、またはS3サーバーアクセスログが必要です。CloudTrailの管理イベントにはロールの引き受けやバケットの列挙が記録されますが、データを読み出す操作は含まれません。
Wizは、侵害されたロールが読み取れた秘密情報、パラメーター、Lambda環境変数の更新に加え、そのロールの有効なセッションを取り消すよう勧告しました。認証情報を更新しても、すでに発行された一時セッションは終了しません。
AWSの一時認証情報には有効期限があり、アクセス権限は要求のたびに評価されます。そのため、発行後に権限を変更すると、既存の一時認証情報によるアクセスを拒否できます。IAMのセッション取り消し機能は、指定時刻より前に発行されたロールの一時認証情報に対して、操作を拒否するポリシーを付加する仕組みです。この処理にはロールのポリシーを設定する権限が必要で、対象ロールを使用中の正規利用者も影響を受けます。
Wizはあわせて、外部アカウントを信頼するロールの棚卸しと、使用しなくなった連携用ロールの削除、または信頼ポリシーからの連携先アカウントの除去を推奨しています。










