PavinLoaderがClickFixと偽のダウンロード誘引で拡散中
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
PavinLoaderは、ClickFixや偽のソフトウェアダウンロード操作を含むいくつかのキャンペーンで観察された多段階の.NETローダーです。これは、強く難読化されたDLL、MSBuildの悪用、およびブロックチェーンインフラストラクチャを用いたEtherHidingを通じてコマンド・アンド・コントロールの詳細を取得します。その主な目的は、Amatera Stealerのような二次ペイロードを配信することです。
調査
調査では、トロイの木馬化された.NET DLLとMSBuildなどの正規のWindowsユーティリティを悪用した一貫した感染チェーンが確認されました。研究者は、PavinLoaderがブロックチェーンベースのEtherHidingを使用して従来のネットワーク検出を回避する方法を文書化しました。さまざまな段階の分析では、高度な逆解析対策、フォレンジック対策、カスタム難読化技術も明らかにされました。
軽減策
組織は、疑わしいMSBuildの活動や、異常な .csproj or .bat ファイルの実行を監視する必要があります。厳格なアプリケーション制御が、無許可のDLLのロードを防ぎ、ネットワーク監視は、ブロックチェーンRPCエンドポイントへの予期しない接続を検出する必要があります。既知の悪意のあるTLD(例: .lat, .icu、 .shop など)をブロックすることも、リスクを減少させるかもしれません。
対応策
PavinLoaderの活動が検出された場合、Amatera Stealerによる横移動やデータ流出を防ぐために、影響を受けたホストを即座に隔離する必要があります。対応者は、メモリフォレンジックを実施して注入された.NETコードを特定し、システムプロキシ設定に不正な変更がないか確認する必要があります。また、既知のC2ドメインやブロックチェーン関連のRPC活動への接続についてネットワークログを調査する必要があります。
攻撃フロー
この部分はまだ更新中です。
検出
LOLBAS Conhost(cmdline経由)
Powershellからの疑わしい.NETメソッドの呼び出し(powershell経由)
Telegramのコマンド・アンド・コントロールチャンネルとしての不正利用の可能性(dns_query経由)
IPルックアップドメイン通信が試みられた可能性(dns経由)
異常なトップレベルドメイン(TLD)のDNSリクエストによる疑わしいコマンド・アンド・コントロール(dns経由)
検出するためのIOC(HashSha256):ClickFixや偽のダウンロードキャンペーンにわたってPavinLoaderを追跡
検出するためのIOC(SourceIP):ClickFixや偽のダウンロードキャンペーンにわたってPavinLoaderを追跡
検出するためのIOC(DestinationIP):ClickFixや偽のダウンロードキャンペーンにわたってPavinLoaderを追跡
MSBuildと難読化されたBATを使用したPavinLoaderの実行を検出 [Windows プロセス作成]
シミュレーション実行
前提条件:テレメトリーとベースラインの事前飛行チェックがパスしていること。
根拠:このセクションは、検出ルールをトリガーするように設計された敵の技術(TTP)の正確な実行を詳述しています。コマンドと説明はTTPsを直接反映し、検出ロジックによって期待される正確なテレメトリーを生成することを目的としています。抽象的または無関係な例は誤診につながります。
-
攻撃の筋書きとコマンド: 敵は、社会工学的な「ClickFix」戦術を使ってPavinLoaderを配備することを狙っています。検出を回避するために、ドライバーアップデートとして偽装された悪意のあるペイロードをダウンロードします。彼らはバッチスクリプトを偽の
Conexantディレクトリ内に置きますAppData。その後、彼らはMSBuild.exeを使用してこのバッチスクリプトを実行し、正規のMicrosoftコンパイラを利用して難読化されたコマンドを実行することで、単純な実行制限を回避し、システムノイズに紛れることを目指しています。 -
リグレッションテストスクリプト:
# PavinLoader シミュレーションスクリプト $userProfile = $env:USERPROFILE $targetDir = "$userProfileAppDataLocalConexantlite_bootstrap_2.1.7" $batFile = "$targetDirupdater_8219.cmd" # 1. 偽装されたディレクトリ構造の作成 New-Item -Path $targetDir -ItemType Directory -Force # 2. 悪意のあるバッチファイルの作成(難読化されたロジックをシミュレート) "@echo off`ncall $batFile /launched" | Out-File -FilePath $batFile -Encoding ascii # 3. インディケーター3のトリガー:MSBuildによるバッチファイルの実行 Write-Host "[+] インディケーター3をシミュレーション:MSBuildの実行..." Start-Process "C:WindowsMicrosoft.NETFramework64v4.0.30319MSBuild.exe" -ArgumentList "`"$batFile`"" -Wait # 4. インディケーター4のトリガー:ヘッドレスconhostの実行 Write-Host "[+] インディケーター4をシミュレーション:ヘッドレスconhostの実行..." Start-Process "C:WindowsSystem32conhost.exe" -ArgumentList "--headless cmd.exe /c `"$batFile`" /launched" -
クリーンアップコマンド:
# シミュレーションアーティファクトのクリーンアップ $userProfile = $env:USERPROFILE $pathsToCleanup = @( "$userProfileAppDataLocalLogitech", "$userProfileAppDataLocalConexant" ) foreach ($path in $pathsToCleanup) { if (Test-Path $path) { Remove-Item -Path $path -Recurse -Force Write-Host "[+] $pathを削除しました" } }