VS Code拡張機能Ethcodeが悪意のプルリクエストで侵害、暗号通貨開発者を標的

[更新]2025年7月9日22:41

VS Code拡張機能Ethcodeが悪意のプルリクエストで侵害、暗号通貨開発者を標的 - innovaTopia - (イノベトピア)

2025年6月17日、Airez299というユーザーがGitHubでEthcode VS Code拡張機能に対してプルリクエストを開いた。

Ethcodeは7finneyが2022年にリリースしたEthereum Virtual Machine(EVM)ベースのブロックチェーンでSolidityスマートコントラクトをデプロイ・実行するためのVS Code拡張機能である。この拡張機能は6,000回以上インストールされていた。

ReversingLabsによると、Airez299は「viem統合とテストフレームワークによるコードベースの近代化」というメッセージで43のコミットと約4,000行の変更を含むプルリクエストを提出した。この中に2行の悪意のあるコードが含まれており、package.jsonファイルに「keythereum-utils」というnpm依存関係を追加し、src/extension.tsファイルでインポートしていた。

keythereum-utilsは0xlab(バージョン1.2.1)、0xlabss(バージョン1.2.2から1.2.6)、1xlab(バージョン1.2.7)によってnpmにアップロードされ、495回ダウンロードされた。セキュリティ研究者Petar Kirhmajerによると、このライブラリは隠されたPowerShellを起動し、公開ファイルホスティングサービスからバッチスクリプトをダウンロード・実行する。

Microsoftへの責任ある開示後、拡張機能はVS Code Extensions Marketplaceから削除され、悪意のある依存関係の除去後に復活した。プロジェクトメンテナーの0mkaraが6月28日にプルリクエストを提出し、悪意のあるリポジトリを削除した。

From: 文献リンクMalicious Pull Request Targets 6,000+ Developers via Vulnerable Ethcode VS Code Extension

【編集部解説】

今回のEthcode VS Code拡張機能への攻撃は、現代のソフトウェア開発エコシステムが抱える構造的脆弱性を浮き彫りにした事案です。この攻撃手法は「サプライチェーン攻撃」と呼ばれ、開発者が日常的に信頼するツールや依存関係を悪用する巧妙な手口となっています。

攻撃者が用いた「プルリクエスト」という手法について説明しましょう。GitHubにおけるプルリクエストは、オープンソースプロジェクトへの貢献を提案する標準的な仕組みです。通常は善意の開発者が機能改善やバグ修正を提案する際に使用されますが、今回は悪意のある攻撃者がこの信頼関係を悪用しました。

特に注目すべきは、攻撃者が43のコミットと約4,000行の変更という大規模な更新の中に、わずか2行の悪意のあるコードを巧妙に隠したことです。これは「ノイズの中に針を隠す」戦術として知られ、レビュー担当者が膨大な変更の中から悪意のあるコードを発見することを困難にします。

この攻撃が示すより深刻な問題は、オープンソースエコシステムへの過度な信頼です。開発者は効率性を重視するあまり、依存関係の安全性を十分に検証せずに導入する傾向があります。Sonatypeの調査によると、2025年第2四半期だけで16,279個の悪意のあるオープンソースパッケージが発見されており、前年同期比188%の増加を記録しています。

暗号通貨・ブロックチェーン開発者が特に標的とされる理由も重要なポイントです。これらの開発者は高価値の暗号資産にアクセスできる可能性が高く、また開発中のスマートコントラクトを汚染することで将来的な金銭的利益を狙うことができるためです。

今回の事案で使用された「keythereum-utils」パッケージは、既存の正規パッケージ「keythereum」に「-utils」という接尾辞を付けた巧妙な命名でした。これは「タイポスクワッティング」と呼ばれる手法の変種で、開発者の注意を逸らして悪意のあるパッケージを正規のものと誤認させる狙いがあります。

この攻撃の技術的な影響範囲を考えると、感染したシステムでは隠されたPowerShellが起動し、外部サーバーから追加のマルウェアをダウンロードする仕組みが構築されていました。これにより攻撃者は被害者のシステムに対して継続的なアクセスを確保し、段階的に攻撃を拡大することが可能になります。

規制面での影響も無視できません。このような攻撃の増加により、各国政府はソフトウェアサプライチェーンセキュリティに関する規制強化を検討しています。特に重要インフラや金融サービスに関わる企業では、第三者依存関係の管理がより厳格に求められるようになるでしょう。

長期的な視点では、この事案は開発者コミュニティに重要な教訓を提供しています。効率性と安全性のバランスを取りながら、依存関係の検証プロセスを強化する必要があります。また、自動化されたセキュリティスキャンツールの導入や、コードレビューの品質向上が急務となっています。

北朝鮮のLazarus Groupや中国のYeshen-Asiaクラスターなど、国家レベルの脅威アクターがnpmエコシステムを積極的に悪用している現状も深刻です。これらの組織的な攻撃により、個人の開発者から大企業まで幅広い標的が危険にさらされています。

今回の事案は、現代のソフトウェア開発における「信頼の連鎖」の脆弱性を明確に示しました。開発者は便利さと引き換えに、知らず知らずのうちに攻撃者への扉を開いてしまう可能性があることを改めて認識する必要があります。

【用語解説】

サプライチェーン攻撃
ソフトウェアの開発・配布過程において、信頼される第三者のコンポーネントやツールを悪用してマルウェアを配信する攻撃手法。開発者が日常的に使用するライブラリや拡張機能を標的とする。

プルリクエスト
GitHubなどのバージョン管理システムで、コードの変更を提案・レビューするための仕組み。開発者が既存のプロジェクトに対して機能追加やバグ修正を提案する際に使用される。

npm(Node Package Manager)
JavaScript用のパッケージ管理システム。開発者が作成したライブラリやツールを公開・共有するためのプラットフォーム。Node.jsの標準パッケージマネージャーとして広く利用されている。

EVM(Ethereum Virtual Machine)
Ethereumネットワーク上でスマートコントラクトを実行するための分散型仮想マシン。ブロックチェーン上でプログラムを安全に実行するための計算環境を提供する。

Solidity
Ethereum上でスマートコントラクトを開発するためのプログラミング言語。オブジェクト指向言語で、ブロックチェーン上で動作する分散アプリケーションの開発に使用される。

難読化(Obfuscation)
コードの可読性を意図的に低下させ、解析を困難にする技術。マルウェア作成者が検出を回避するために使用することが多い。

タイポスクワッティング
正規のパッケージ名に似た名前を使用して悪意のあるパッケージを公開し、開発者のタイプミスを狙う攻撃手法。

【参考リンク】

ETHcode – Visual Studio Marketplace(外部)
EVM基盤のブロックチェーンでSolidityスマートコントラクトをデプロイ・実行するためのVS Code拡張機能

ReversingLabs(外部)
ファイルとソフトウェアセキュリティの分野で信頼される企業。現代のサイバーセキュリティプラットフォームを提供

Sonatype(外部)
内部および第三者のバイナリ、コンポーネント、パッケージの単一情報源として機能するNexus Repositoryを提供

Socket(外部)
JavaScript、Python、Goの依存関係に対して脆弱性対策と可視性、多層防御を提供するセキュリティプラットフォーム

【参考記事】

Malicious pull request infects VS Code extension – Reversing Labs(外部)
ReversingLabsによる今回の攻撃の詳細な技術分析。keythereum-utilsパッケージの難読化されたコードの解析結果を解説

脆弱なEthcode VS Code拡張機能を通じて6000人以上の開発者を標的に – Black Hat News Tokyo(外部)
日本語で報じられた今回の事案の詳細。keythereum-utilsパッケージの複数バージョンと攻撃者のアカウント情報を含む

【編集部後記】

今回のEthcode事案を読んで、皆さんはご自身の開発環境をどのように見直されるでしょうか。私たちも日々、便利なツールや拡張機能に頼りながら作業していますが、その一つひとつが潜在的なリスクを抱えているかもしれません。

特に気になるのは、オープンソースへの「信頼」と「検証」のバランスです。効率性を求めるあまり、依存関係の安全性確認を怠ってしまうことはないでしょうか。皆さんは新しいパッケージを導入する際、どのような基準で判断されていますか?

また、今回のような巧妙な攻撃手法を知ることで、私たち開発者コミュニティ全体のセキュリティ意識を高めていけるのではないでしょうか。皆さんのご経験やお考えをぜひお聞かせください。

サイバーセキュリティニュースをinnovaTopiaでもっと読む

投稿者アバター
TaTsu
デジタルの窓口 代表 デジタルなことをまるっとワンストップで解決 #ウェブ解析士 Web制作から運用など何でも来い https://digital-madoguchi.com

読み込み中…
読み込み中…
advertisements
読み込み中…