BlueDelta(APT28)資格情報フィッシング:無料ホスティングとNgrokを利用
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
APT28/Fancy Bearとしても知られるGRU系のグループ、BlueDeltaは、2025年2月から9月の間に複数の資格情報収集キャンペーンを実施しました。これらのキャンペーンでは、偽のOutlook、Google、Sophos VPNのログインページをホスティングするために、無料のホスティングとトンネリングサービスが使用され、取得した資格情報を流出させました。誘引には正当なPDFドキュメントと地域特有の言語が使用され、信頼性を高めていました。この作戦は、トルコ、北マケドニア、ウズベキスタンのエネルギー、核研究、政府、公的機関を対象としていました。
調査
Recorded FutureのInsikt Groupは、Webhook.site、InfinityFree、Byet Internet Services、ngrokなどのサービスでホストされている十数件のフィッシングページを収集しました。ページ上のJavaScriptがユーザー名、パスワード、被害者の識別情報を捕捉し、攻撃者が制御するWebhookへビーコンを送信した後、被害者を正規のポータルにリダイレクトしました。複数のバリアントがコードを再利用し、変数名を修正してデプロイを合理化しました。インフラストラクチャは短命で、ShortURL.atのようなリンク短縮サービスが利用されました。
緩和策
既知の無料ホスティングとトンネリングドメインをブロックし、Webhookサービスへの出力トラフィックを監視し、すべての外部アカウントでMFAを強制します。OWA、Google、VPNポータルを模倣するフィッシングページについてユーザーに教育し、特にPDF誘引が添付されている場合に注意を促します。既知の悪意のあるURLに対してネットワークフィルタリングを実施し、疑わしいPDFリンクを検出するためにメールセキュリティ制御を適用します。
対応
既知のWebhookエンドポイントへのHTTP POSTが観察され、資格情報収集ページが読み込まれたときに、SOCアナリストに警告を出します。悪意のあるページを隔離し、影響を受けたユーザーアカウントを隔離し、パスワードリセットを強制し、横移動を確認するためにログをレビューします。同じインフラを使用する他のページの脅威ハントを行い、ブロックリストを更新します。
攻撃フロー
検出
WebsiteHookエンドポイント経由のマルウェア配布の可能性(プロキシ経由)
表示
WebsiteHookエンドポイント経由のマルウェア配布の可能性(DNS経由)
表示
ポートトンネリングサービスの可能性(DNS経由)
表示
サードパーティサービス/ツールを経由したデータ侵入/流出/C2の可能性(プロキシ経由)
表示
検出すべきIOC(DestinationIP):GRUに関連するBlueDeltaによる資格情報収集の進化
表示
検出すべきIOC(SourceIP):GRUに関連するBlueDeltaによる資格情報収集の進化
表示
WebhookサイトによるBlueDeltaの資格情報収集キャンペーンの検出 [ウェブサーバー]
表示
シミュレーションの実行
前提条件:テレメトリー&ベースラインのプレフライトチェックが通過している必要があります。
理由:このセクションは、検出ルールをトリガーするように設計された敵の技術(TTP)の正確な実行を詳述します。コマンドとナラティブは、特定されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリーを生成することを目的とします。抽象的または無関係な例は誤診につながります。
-
攻撃ナラティブ&コマンド:
- 初期のフィッシング配信: 攻撃者は短縮URLを含むフィッシングメールを送り、それが悪意のある
webhook.siteページにリダイレクトします。 - 被害者の操作: 被害者がリンクをクリックすると、ブラウザはリダイレクトをたどり、HTTP GET リクエストを行います。
https://webhook.site/e8ae3bbd-ab02-46b7-b84c-f5f4baa5d7c7. - 資格情報キャプチャページ: ページにはJavaScriptがホストされており、入力された資格情報を盗んで同じWebhook URLにPOSTしますが、プロキシは初期のGETリクエストのみを記録し、それがルールを発火するのに十分です。
- このテスト用に、PowerShellの
Invoke-WebRequestを使って、正確な悪意のあるURLを要求し、同じプロキシログエントリを再現します。
- 初期のフィッシング配信: 攻撃者は短縮URLを含むフィッシングメールを送り、それが悪意のある
-
リグレッションテストスクリプト:
# ------------------------------------------------- # BlueDelta Webhook Site Access Simulation (TC-20260109-9X3BZ) # ------------------------------------------------- $maliciousUrls = @( "https://webhook.site/e8ae3bbd-ab02-46b7-b84c-f5f4baa5d7c7", "https://webhook.site/3791f8c0-1308-4c5b-9c82-0dc416aeb9c4" ) foreach ($url in $maliciousUrls) { try { Write-Host "Requesting malicious URL: $url" Invoke-WebRequest -Uri $url -UseBasicParsing -Method GET -TimeoutSec 10 | Out-Null Write-Host "✅ Request sent." } catch { Write-Warning "Request to $url failed: $_" } } -
クリーンアップコマンド:
# Flush proxy cache (if applicable) to avoid residual entries net stop "Squid Service" net start "Squid Service" # Remove any temporary files created by the script (none in this case) Write-Host "Cleanup complete."