Maven Central からのマルウェア配信を検出:名前空間に対する巧妙なタイポスクワッティング

Hackers Infiltrated Maven Central Masquerading as a Legitimate Jackson JSON Library

2025/12/30 CyberSecurityNews — Maven Central で確認されたのは、正規の Jackson JSON ライブラリのエクステンションを装う新たなマルウェア攻撃である。Java 開発者たちが最も信頼するリポジトリである Maven Central 上で、タイポスクワッティングを介したマルウェアの拡散が検知された。この悪意のパッケージは、名前空間 “org.fasterxml.jackson.core/jackson-databind” を介して公開されている。正規の Jackson ライブラリは “com.fasterxml.jackson.core” 名前空間で提供されているが、悪意のパッケージは “org.fasterxml.jackson.core” を使用するという、巧妙な名前空間の偽装が図られている。

この名前空間のわずかな差異に騙された開発者が、悪意のパッケージをプロジェクトへ組み込んでしまうリスクが生じる。

このマルウェア攻撃には、周到な準備の痕跡が明確に認められる。攻撃者は、パッケージ名前空間を “.com” から “.org” へ切り替える戦略を用いて、正規の “fastxml.com” を模倣する偽ドメイン “fastxml.org” を作成した。

このドメインが登録されたのは 2025年12月17日であり、この脅威を Aikido のアナリストたちが特定した8日前のことだった。ドメイン登録から実際の展開までを短期間に収めることは、マルウェア攻撃で一般的に用いられる手法であり、それにより早期の検知やブロックリスト登録を回避している。

Malware at a glance (Source - Aikido)
Malware at a glance (Source – Aikido)

この悪意のパッケージは、Maven Central に直ちに報告され、1時間半もかからずに削除された。しかし、その間に、開発者のシステムが侵害された可能性があった。

Aikido のアナリストたちによると、このマルウェアは目的を隠蔽するために、2つ目のパラグラフ以降で多層的な難読化を採用している。

“jar” ファイル内のコードは高度にスクランブル化されており、機械学習ベースの解析ツールを混乱させるためのプロンプト・インジェクションも用いられていた。

このファイルは、Unicode 文字を適切にエスケープしないエディタで開くと、コード内に大量のノイズが表示され、手動による解析が著しく困難となる。

しかし、この研究チームは、詳細な解析を通じて難読化の解除に成功した。その結果として判明したのは、Command and Control (C2) サーバへ接続し、感染させたシステム上で新たな悪意のペイロードを実行するという、このマルウェアの実体だった。

感染メカニズムとペイロード配信

このマルウェアによる侵害は、開発者が “pom.xml” に悪意の依存関係を追加した時点から始まり、全体で7段階にわたる感染プロセスを通じて展開される。

追加されたパッケージは、Spring Boot アプリケーションの起動時に自動実行される。Spring が “@Configuration” クラスをスキャンする過程において、”JacksonSpringAutoConfiguration” が検出される。

さらに、このマルウェアは Spring Boot 環境に常に存在する “ApplicationRunner.class” をチェックすることで、開発者による明示的な呼び出しを必要とせずに悪意のコードを実行する。

この感染メカニズムは、作業ディレクトリ内で “.idea.pid” というファイルを検索することで、永続性に関するチェックも行う。このファイル名は、IntelliJ IDEA のプロジェクト関連ファイルに自然に紛れ込むため、プロジェクト構造を確認する開発者が見落としやすくなる。

その後に、マルウェアは “System.getProperty(“os.name”)” を用いて環境フィンガープリンティングを行い、その実行環境を Windows/macOS/Linux の中から判定する。この情報は、対象 OS に適したペイロードを取得するために利用される。

WHOIS records (Source - Aikido)
WHOIS records (Source – Aikido)

C2 通信は、”http[:]//m[.]fasterxml[.]org:51211/config[.]txt” を通じて行われるが、このファイルには AES で暗号化されたコンフィグ・データが含まれる。

本マルウェアは、ハードコードされた AES-ECB 鍵 (9237527890923496) を使用して、各プラットフォーム向けのペイロード URL を復号する。

Windows 環境における復号後の形式は、以下のような “os|url” 形式となる。

“win|http[:]//103.127.243[.]82:8000/http/192he23/svchosts.exe”

このマルウェアは、システムの一時ディレクトリに “payload.bin” というバイナリをダウンロードした後に、Unix 系では “/dev/null” へと、Windows では “NUL” へと出力をリダイレクトして実行し、可視的な挙動を抑制する。

Windows 向けペイロード “svchosts.exe” は、正規の “svchost.exe” プロセスを偽装することで検出の回避を図っている。

VirusTotal の分析により確認されたのは、Linux/macOS 向けバイナリは Cobalt Strike ビーコンであることだった。この Cobalt Strike ビーコンは、ランサムウェア攻撃者や高度持続的脅威 (APT) グループにより広く悪用されるツールであり、リモートアクセス/認証情報窃取/ネットワーク内ラテラルムーブメントなどを引き起こす。