ReversingLabsは、Ethereumスマートコントラクトを利用してダウンローダーのURLを隠し、第2段階のマルウェアを取得する悪意のあるNPMパッケージ2件を発見。これにより攻撃者はオンチェーン上で指令サーバーのリンクを隠し、セキュリティスキャンを回避していました。
-
新たな回避技術:スマートコントラクトに第2段階マルウェアのダウンロードURLをホスト。
-
攻撃者は、簡易ダウンローダーとして機能するcolortoolsv2とmimelib2という名前の悪質なNPMパッケージを公開しました。
-
セキュリティ状況:2024年に暗号資産関連のリポジトリ攻撃23件を記録。これらはブロックチェーンの通信とソーシャルエンジニアリングを組み合わせ、検知の難易度を上げています。
Ethereumスマートコントラクトを悪用したNPMパッケージのマルウェア:攻撃者がオンチェーンで悪意あるURLを隠す方法と、検知のポイントを解説します。
NPMパッケージ内のEthereumスマートコントラクトマルウェアとは?
Ethereumスマートコントラクトマルウェアとは、NPMパッケージのコードがオンチェーンのスマートコントラクトを参照し、隠されたC2(指令・制御)サーバーのURLやコマンドを取得、さらに第2段階のペイロードをダウンロードする手法です。これによりパッケージレジストリに悪質なリンクを直接置かず、静的解析の効果を低減させています。
悪意のあるNPMパッケージはどうやってスマートコントラクトを利用しペイロードを隠すのか?
攻撃者は最小限のダウンローダー機能だけを持つパッケージを公開し、Ethereumスマートコントラクトに問い合わせて暗号化されたURLやコマンドを取得します。その後、そこから第2段階マルウェアをダウンロードします。これにより悪質インフラをレジストリからブロックチェーントランザクションへ移し、正当な通信に見えるためURLベースの検知を回避しています。
ReversingLabsの調査で、Ethereumスマートコントラクトを用いて悪意あるURLを隠しセキュリティスキャンを回避した2つのNPMパッケージが発見されました。
攻撃者は検知回避のため、悪性の指令先をEthereumスマートコントラクトに埋め込み配信する新たな手法を採用。セキュリティ企業ReversingLabsは、第2段階マルウェアのダウンローダーとして機能する2件のオープンソースNPMパッケージでこの手法を確認しました。
ReversingLabsの研究者ルシヤ・ヴァレンティッチは、両パッケージをcolortoolsv2とmimelib2として特定。いずれも2024年7月に公開され、悪意あるリンクをコード内に直接置かずEthereumブロックチェーンのスマートコントラクトを参照してURLを取得していました。
指令サーバーの参照をオンチェーンに移すことで、攻撃者はパッケージレジストリ上に痕跡を残さず、ブロックチェーン通信が正当と見なされる点を悪用。ダウンローダーパッケージは単純なフェッチ処理を実行し、オンチェーン情報からHTTP(S) URLを復号してペイロードを取得していました。

なぜこの攻撃手法は深刻なのか?
スマートコントラクトで悪意あるURLをホスティングまたは参照することは、ブロックチェーン通信とソフトウェアサプライチェーン攻撃を融合させています。検知が難しくなる理由は以下の通りです:
- ブロックチェーンクエリは通常のノード通信に見え、URLフィルターに引っかからない可能性が高い。
- パッケージのマニフェストは一見無害で、単純なダウンローダーコードしか公開されていない。
- GitHub上でのソーシャルエンジニアリングや捏造されたプロジェクト履歴により、悪質なリポジトリへの信頼度が増す。
攻撃者はどうやって悪質リポジトリを正当なものに見せたのか?
攻撃者は偽のコミット、架空のメンテナアカウント、関心を装うウォッチャーアカウント、プロによるドキュメント作成、多数のフォークによって活発な開発を模倣、こうしたソーシャルエンジニアリングを駆使して、開発者や利用者が疑いなくパッケージを導入する狙いがありました。
よくある質問
スマートコントラクトは悪意あるコンテンツを隠すのに使えるのか?
はい。スマートコントラクトはエンコードされた文字列やURLを格納または参照可能です。攻撃者はC2アドレスやコマンドをオンチェーンに暗号化しておき、ダウンローダーコードがそれを解読し、第2段階のマルウェア配布を実現します。従来のサーバーに悪質なリンクを置かずに済むため、検知が難しくなります。
開発者はどうすればオンチェーンURLを使うNPMパッケージを検知できる?
ブロックチェーンのRPCコールを行うパッケージを監視し、予期しないノードへの問い合わせなどランタイムのネットワーク挙動を確認、さらにネットワーク隔離下でのサンドボックスインストールを実施することが有効です。静的解析だけではオンチェーン参照が見落とされる恐れがあります。
この攻撃はEthereumに限られるのか?
いいえ。他のチェーンでも同様の手法が確認されています。過去にはSolanaを標的とした偽リポジトリや、BitcoinlibなどPythonライブラリを狙った攻撃もあり、攻撃者はエコシステムを跨いで手法を適応させています。
まとめ
- 新技術:攻撃者はEthereumスマートコントラクトを使いC2 URLを隠し、標準的なスキャンを回避。
- サプライチェーンリスク:毒されたNPMパッケージはダウンローダーとして機能し、巧妙なGitHubの詐術に依拠。
- 対策:パッケージ審査の強化、ビルド時のブロックチェーンRPCコール監視、サンドボックス環境でのインストール推奨。
結論
今回の事例は、ブロックチェーン技術と伝統的なサプライチェーン詐称を融合させた急速に進化する脅威を示しています。組織は検知体制をアップデートし、ランタイムでのブロックチェーン問い合わせ監視、厳格なパッケージ由来の検証、サンドボックスインストールを導入すべきです。ReversingLabsや他のセキュリティチームは、オンチェーン操作を行うパッケージに対する警戒強化を推奨しています。