ミラージュキトンがNodeRabbitとPollCatを採用オファーの誘惑によって展開
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
イランに関連する脅威アクター、ミラージュキトンは、偽のリクルーター人物を通じてソフトウェアエンジニアを狙ったサイバースパイ活動を展開中です。攻撃者はトロイ化されたコーディングチャレンジを配布し、新たに特定されたクロスプラットフォームRAT、NodeRabbitとPollCatを提供します。これらのマルウェアファミリーは、Node.js環境を悪用し、Windows、Linux、およびmacOSシステムに持続性とリモートアクセスを確立します。
調査
カスペルスキーはアフガニスタンでNodeRabbitサンプルを発見し、その後エジプトとエチオピアでより高度なバリアントを明らかにしました。調査では、正当なWebアプリケーションアーカイブに埋め込まれた悪意のあるnpmパッケージを含む洗練された感染チェーンが明らかになりました。研究者らはまた、Reactベースの別のコーディングチャレンジを通じて操作するPollCatを特定しました。
軽減策
組織はサードパーティのnpmパッケージ依存性に対する厳しい管理を実施し、AI支援のコードレビューツールを使用して疑わしいインポートや動作を識別すべきです。開発者はプロフェッショナルネットワーキングプラットフォームでの社会工学攻撃を認識できるよう訓練を受けるべきです。セキュリティチームはまた、権限のないVisual Studio Code拡張機能やGitフックへの予期しない変更を監視するべきです。
対応
悪意のある活動が検出された場合、影響を受けた開発者のワークステーションを即座に孤立させ、横方向の移動およびさらなるC2通信を防ぐべきです。応答者はローカルの node_modules ディレクトリ、Gitフック、およびVS Code拡張機能を権限のないまたは疑わしいファイルについて監査するべきです。特にAzurおよびCloudflareからのクラウドインフラストラクチャログを、開発者環境からの異常な接続についても確認するべきです。
攻撃フロー
検出
バイパス実行ポリシーを使用して疑わしいディレクトリでファイルを実行しているPowershell(コマンドライン経由)
既知の悪用されたプロセスによってスポーンされた可能性のあるノード(コマンドライン経由)
Node.Jsが通常とは異なるディレクトリでファイルを実行中(コマンドライン経由)
検出するためのIOC(HashSha256):ジョブオファーには爪があります:ミラージュキトンがNodeRabbitとPollCatを展開
NodeRabbitプロキシ環境変数検査とHTTP CONNECTトンネリング [プロキシ]
ミラージュキトンのNodeRabbitおよびPollCat RAT検出 [Windowsプロセス生成]
トロイ化されたコーディングチャレンジにおけるNodeRabbit RATの検出 [Linuxプロセス生成]
シミュレーション実行
-
攻撃のナラティブとコマンド: 攻撃者は開発者を騙して悪意のある「コーディングチャレンジ」リポジトリを実行させることに成功しました。開発者はコーディング環境をシミュレートするために意図されたNode.jsスクリプトを実行します。しかし、そのスクリプトには
taskflow引数が含まれており、これはNodeRabbit RATの初期化ルーチンの一部です。目的は、正当な開発ツールとして偽装することでリモートアクセスの足掛かりを確立することです。node taskflow.jsは、規則をトリガーするために必要なコマンドラインテレメトリーを正確に生成します。 -
回帰テストスクリプト:
# NodeRabbit RAT検出のためのシミュレーションスクリプト # このスクリプトはダミーのJavaScriptファイルを作成し、特定の引数 'taskflow' を使用してNode.jsで実行し、検出ルールをトリガーします。 $dummyFile = "challenge_setup.js" "console.log('Initializing coding challenge...');" | Out-File -FilePath $dummyFile -Encoding utf8 Write-Host "[+] taskflow引数経由でNodeRabbit RATの実行をシミュレート中..." -ForegroundColor Cyan # 検出のトリガー: node <filename> <trigger_string> node $dummyFile taskflow Write-Host "[+] シミュレーションコマンドを実行しました。" -ForegroundColor Green -
クリーンアップコマンド:
# シミュレーションのアーティファクトを削除するためのクリーンアップスクリプト Remove-Item -Path "challenge_setup.js" -ErrorAction SilentlyContinue Write-Host "[+] クリーンアップ完了。シミュレーションのアーティファクトが削除されました。" -ForegroundColor Yellow