PavinLoaderは、ClickFix・偽ソフトウェアダウンロード・悪意あるゲームキャンペーンにまたがって活動する、多段階型の.NETマルウェアローダーです。
比較するトップアンチウイルス製品
この活動は、攻撃者が単一の配布手段にとどまらなくなっている実態を示しています。被害者は偽のCloudflareやGoogleの検証ページに誘導されコマンドの貼り付けを指示されるケースもあれば、一見正規のソフトウェアをインストールするよう仕向けられるケース、あるいはゲームやMODと称するものをダウンロードさせられるケースもあります。
しかし実行が始まると、その後の攻撃チェーンは静的検知・サンドボックス解析・インフラ摘発を妨害するよう作り込まれた、一貫した設計パターンに従います。
PavinLoaderは通常、ごく普通のインストーラーを装ったInno SetupまたはMSIパッケージとして配布されます。
これらのパッケージには、BATまたはCMDランチャー、.csprojプロジェクトファイル、名前を変更した正規のMSBuild.exe、そしてトロイの木馬化された.NET DLLが含まれています。
このマルウェアは、MSBuildのUsingTask機能と.NETのアセンブリ読み込み機能を悪用し、正規の開発者ツールのワークフローに紛れ込みながら悪意あるコードを実行します。
研究者らは、DotNetZip、Nancy、Renci.SshNet、OpenXMLといったライブラリの改ざん版を確認しています。
注入されたメソッドは、DefaultEvaluator5やFallbackFactory5のように、2つの単語、または2つの単語と数字を組み合わせた命名規則を用いる傾向が見られます。
同様のランダムな単語の組み合わせは、DLL名、関数名、文字列、C2リクエストパスといった攻撃全体で確認されており、クラスター単位で識別可能な特徴となっています。
あるClickFixの事例では、偽のCloudflare誘導ページから配布されたMSIパッケージに、正規のMSBuildバイナリ、.csprojファイル、そして悪意あるDotNetZip DLLが含まれていました。
別のサンプルでは、MSIのカスタムアクションを使い、偽の「BUILD VERIFICATION REPORT」というコメントで装飾された難読化済みCMDファイルを起動していました。

このスクリプトはconhost.exe経由で再起動し、MSBUILDENABLEALLPROPERTYFUNCTIONSを有効化した上でMSBuildを呼び出し、次段階を実行します。
GBhackersと共有されたレポートの中でMalwarebytesは、このローダーが信頼されたWindowsユーティリティ、トロイの木馬化されたライブラリ、多層の難読化、そしてコマンド&コントロールインフラの名前解決にブロックチェーンを利用する手法であるEtherHidingを組み合わせ、Amatera Stealerを配布していると述べています。
PavinLoaderが用いるClickFix
この攻撃を際立たせる大きな特徴の一つが、EtherHidingの利用です。ローダーにC2ドメインを直接埋め込むのではなく、このマルウェアはブロックチェーンのRPCサービスに問い合わせを行い、動的に制御されるインフラ情報を取得します。
比較するトップアンチウイルス製品
Malwarebytesは、BinanceのBSCエンドポイントに対するEthereum JSON-RPCのeth_callリクエストを確認しており、返されたスマートコントラクトのデータが、暗号化されたペイロードを取得するために使われるC2情報を提供していました。
この設計は、攻撃者側に高い運用上のレジリエンスをもたらします。防御側が特定済みのダウンロードドメインをブロックしても、攻撃者は初期ペイロードを作り直したり再配布したりすることなく、スマートコントラクトから更新後の接続先アドレスをローダーに取得させることができるためです。
EtherHidingは、C2アドレスなどのインフラ情報をブロックチェーンに紐づくコンテンツ内に隠すことに特化して設計されており、これにより攻撃の帰属特定や無力化がいっそう困難になります。
その後PavinLoaderは、assets/{2つのランダムな単語}.jsonのようなパスを介して後続のコンポーネントを要求します。確認されたC2ドメインには.lat、.icu、.shop、.cfdといったトップレベルドメインが頻繁に使われており、ペイロードデータはJSONレスポンス内でXORエンコードされていました。

このローダーチェーンは、第一段階のDLL、EtherHidingダウンローダー、アンチ解析用DLL、そしてPEローダーで構成されています。
最初のコンポーネントはTLS証明書の検証を無効化し、プロキシ設定を変更した上で、タイミングチェックを実施し、ハッシュを用いてAPIを解決し、アンチフォレンジック処理を行います。
アンチ解析段階では、レジストリの検査、ファームウェアテーブルの確認、PCI識別子、BIOS文字列、システムメタデータといった手段を通じて仮想マシンの痕跡を探索します。
さらにキーボードレイアウトの確認や、公開IPアドレスおよび位置情報サービスへの問い合わせも行っており、研究インフラに関連付けられる特定の地域やホスティングプロバイダーの環境での実行を回避しているとみられます。
これらのチェックを通過すると、PavinLoaderは最終的なPEペイロードを取得します。以前に確認されているRenPyキャンペーンでは、この一連の攻撃チェーンは最終的にAmatera Stealerへとつながっていました。
Amatera Stealerは、アンチサンドボックスチェック、ブラウザの列挙、暗号資産ウォレットデータや認証情報の窃取が可能なC++製の情報窃取型マルウェアです(malpedia.caad.fkie)。
一見無関係に見える複数の誘導手法にわたって同一のローダーアーキテクチャが使い回されている点から、PavinLoaderがLoader-as-a-Serviceとして運用されている可能性が浮上しています。
Malwarebytesは、200件を超える関連ファイルにまたがって共有されているVirusTotalの成果物を発見したほか、「EDIT HERE」「REPLACE with a real direct link」「Automated builder helper」といった文言を含む、ビルダーとみられるPowerShellおよびBATのコンテンツも確認しています。
ただし研究者らは、商用サービスとして提供されていることを裏付ける販売用ポータルや運営者向けチャネルは特定できていません。
防御側にとってこのキャンペーンは、想定外のMSBuild実行、ユーザー書き込み可能なディレクトリ内の不審な.csprojファイル、名前を変更されたWindowsバイナリ、そしてエンドポイントからのブロックチェーンRPCへの通信を監視する必要性を改めて示すものです。
実行コマンドをRunダイアログやPowerShell、ターミナルに貼り付けるよう求める偽のCAPTCHA指示は、信頼性の高いソーシャルエンジニアリングの警告サインとして扱うべきです。
侵害指標(IOC)
| 種別 | 指標 | 説明 |
|---|---|---|
| SHA-256 | bdf313a019e025ebf58ccef4619444ee70e661bd444e0644ebeabd8f5caad14c |
PavinLoader関連ファイルのハッシュ値 |
| SHA-256 | e3830f5747e3f46537d217124d80c9f3bb4d89f8d4f5138dce69ee54ea4fb6b9 |
PavinLoader関連ファイルのハッシュ値 |
| SHA-256 | a4f03272cf96732dc9f58bb466d16f358e7f50d46dba30526a9fbebfec11717b |
PavinLoader関連ファイルのハッシュ値 |
| IPアドレス | 93.152.224[.]75 |
PavinLoaderをダウンロード |
| IPアドレス | 65.21.80[.]170 |
PavinLoaderをダウンロード |
| IPアドレス | 195.63.142[.]49 |
PavinLoaderをダウンロード |
注: IPアドレスおよびドメインは、誤って名前解決やリンク化されるのを防ぐため、意図的にディフェンジング処理(例: [.])を施しています。再度有効な形式に戻す作業は、MISP、VirusTotal、SIEMなど管理された脅威インテリジェンス基盤内でのみ行ってください。
★ 見直すべきセキュリティツールを1ページで診断 – 「継承されたセキュリティスタック」ガイドをダウンロード
比較するホームセキュリティシステム
翻訳元: https://gbhackers.com/pavinloader-uses-clickfix/