ブラインダー・トンネルキャンペーン分析:戦術、技術、インフラストラクチャ
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
イランの国家に近い脅威アクターが中東の重要インフラ組織に対して、Blinder Tunnelキャンペーンを実施しています。攻撃者はソーシャルエンジニアリングを利用し、ドバイ空港になりすまして武器化されたVisual Studioプロジェクトを配布しています。これらのプロジェクトは信頼された開発者ツールを悪用して、ShelbyLoader V2やBlackwoodトンネリングユーティリティなどのカスタムマルウェアを展開し、GitHubベースのコマンドアンドコントロールインフラを使用しています。
調査
Unit 42の研究者たちは、2025年後半のインフラ準備から2026年に観察された活発な標的選定までの活動を追跡しました。この調査で、AppDomainManagerのハイジャックやDLLサイドローディングを含む多段階の感染チェーンを明らかにしました。マルウェア分析では、C2通信やデッドドロップリゾルバーにGitHub APIを利用し、『ピーキー・ブラインダーズ』に着想を得たテーマ性のあるネーミングとブランディングを伴っていることも判明しました。
軽減策
組織は開発環境を強化し、msbuild.exeのような信頼できるユーティリティの不審な実行を監視するべきです。厳格なDLL読み込み制御を施行し、システムディレクトリ内の予期しないまたは標準的でないDLLを検出することで攻撃の露出を減らすことができます。また、セキュリティチームはメモリー内実行や無許可のPowerShell活動を検出できる高度なエンドポイント保護を導入すべきです。
対応
不審な活動が検出された場合、組織は影響を受けたエンドポイントを隔離し、クレデンシャルのリセットを開始する必要があります。セキュリティチームはエンドポイント検出と応答(EDR)のテレメトリを調べ、合法的なプロセスのハイジャックの兆候を特に確認します。調査者はまた、GitHubのようなパブリッククラウドサービスへの無許可の接続をレビューし、異常または標準的でないトラフィックパターンを確認します。
攻撃フロー
検出
持続性の可能性がある箇所 [ASEPs – Software/NTUSER Hive] (via registry_event)
非典型的なパスからのシステムプロセスの実行 (via process_creation)
珍しいプロセスによって開始された可能性のあるGitHubファイルのダウンロード (via network_connection)
珍しいトップレベルドメイン (TLD) のDNSリクエストによる不審なコマンドアンドコントロール (via dns)
検出を見るためのIOC (HashSha256): Blinder Tunnel Campaign Analysis
Blinder Tunnelキャンペーン分析を検出するためのIOC (SourceIP)
Blinder Tunnelキャンペーン分析を検出するためのIOC (DestinationIP)
フィッシングドメインcloud.g-drive.camからの不審な活動 [Google Cloud Platform]
AppDomainManager ハイジャックを誘発するリネームされたプロセスの検出 [Windows Process Creation]
Blinder TunnelマルウェアVisual Studioプロジェクトの検出 [Windows File Event]
シミュレーション実行
-
攻撃の概要とコマンド: 攻撃者はフィッシングキャンペーンを開始します。被害者はGoogle Cloudからの共有ドキュメントのように見えるメールを受け取ります。被害者がリンクをクリックすると、ブラウザはGETリクエストを行います。
https://cloud.g-drive.cam/login/auth。このリクエストは企業プロキシによってキャプチャされ、悪意のあるドメインがURL内にあるため、検出ルールをトリガーするはずです。 -
回帰テストスクリプト:
# フィッシングドメインへのリクエストで検出ルールをトリガーするシミュレーションスクリプト # フィッシングメール内のリンクをクリックするユーザのシミュレーションです。 $PhishingUrl = "https://cloud.g-drive.cam/auth/login?user=victim" Write-Host "フィッシングドメインへの接続をシミュレート: $PhishingUrl" try { # ドメインは実際には存在しないため、-ErrorAction SilentlyContinueを使用しますが、 # DNSリクエストと接続の試みがプロキシログを生成します。 Invoke-WebRequest -Uri $PhishingUrl -Method Get -UseBasicParsing -ErrorAction SilentlyContinue Write-Host "接続試行完了。SIEMでプロキシログを確認してください。" } catch { Write-Host "接続失敗が予想されました (ドメインはおそらく存在しない)、しかしテレメトリは生成されるはずです。" } -
クリーンアップコマンド:
# システムに永続的な変更は行われません。 # 必要に応じてローカルWebキャッシュをクリアするには: Clear-History Write-Host "シミュレーションクリーンアップ完了。ホストにアーティファクトは残っていません。"