VSCodeで約900万回ダウンロードされていた拡張機能へのマルウェア 混入疑惑は誤検知

セキュリティニュース

投稿日時: 更新日時:

VSCodeで約900万回ダウンロードされていた拡張機能へのマルウェア 混入疑惑は誤検知

2025年2月26日、Microsoftは「Material Theme – Free」および「Material Theme Icons – Free」というVisual Studio Code(VSCode)の人気拡張機能をマーケットプレイスから削除しました。両拡張機能は合計約900万回ダウンロードされており、開発者向けに広く使用されていましたが、悪意のあるコードを含んでいる可能性が指摘されました。

2025年3月、Microsoftは、Visual Studio Marketplaceから一時的に削除していたこの2つのVSCode拡張機能を復元しました。これらの拡張機能は、難読化されたコードが含まれていたとして削除されましたが、調査の結果、悪意のあるコードではなかったことが判明しました。

削除の経緯

削除の発端となったのは、サイバーセキュリティ研究者のAmit Assaraf氏とItay Kruk氏による調査です。両氏はVSCodeの拡張機能をスキャンし、「Material Theme」関連の拡張機能に不審なコードが含まれている」とMicrosoftに報告しました。

Microsoftの対応は迅速で、以下のアクションを実施しました。

  1. 該当の拡張機能をVSCodeマーケットプレイスから削除
  2. 拡張機能の開発者(Mattia Astorino / equinusocio)をマーケットプレイスからBAN
  3. 影響を受けた拡張機能をインストールしているVSCode環境から強制的に削除
  4. 「著作権やライセンス問題ではなく、悪意のあるコードの疑いによるもの」と明言

Microsoftの公式声明では、「拡張機能を徹底的に調査し、悪意のある意図があると判断したため削除した」と説明しています。

AIスキャナーによるフラグと誤認

拡張機能の開発者 Astorino氏は、この疑惑にすぐに反論し、次のように説明しています。

「問題は、2016年から利用していたsanity.ioの古い依存関係にありました。この依存関係は、リリースノートを表示するために利用していましたが、すぐに削除できるものでした。しかし、Microsoftからの事前連絡はなく、突然アカウントがBANされてしまいました。」

Astorino氏によると、問題は古いビルドスクリプトにあり、このスクリプトはSVGアイコンを生成するために一時的に使用していたもので、すでに削除済みだったと説明しています。

Microsoftの謝罪と再発防止策

2025年3月12日、MicrosoftのScott Hanselman氏は、GitHub上でAstorino氏に対して正式に謝罪し、アカウントと拡張機能の復元を発表しました。

「Material ThemeとMaterial Theme Iconsのパブリッシャーアカウント(Equinusocio)は誤ってフラグが立てられており、現在は復元されています。」

「安全性を優先するあまり、対応が過剰になってしまいました。社内の複数のマルウェア検出インジケーターが作動し、誤った結論に至ってしまいました。」

Hanselman氏はさらに、Visual Studio Code Marketplaceのポリシーについても見直し、今後は難読化されたコードへの対応を慎重に行うと述べています。

なぜコードが難読化されていたのか?

Amit Assaraf 氏はBleepingComputer の本件の質問に関して、「拡張機能には悪意のあるコードが含まれていた」と主張し続けた。しかし、発行元に悪意はなかったと述べ、「今回のケースでは、Microsoft の動きが早すぎた」とコメントしています。

「Material Theme Icons」では、以前にSVGアイコンをJSONファイルとして出力するビルドスクリプトを利用しており、このコードが意図せず最終的なindex.jsに含まれていたとのことです。

「Material Theme」に関しては、2016年からsanity.ioのSDKクライアントを依存関係として利用していました。このSDKがビルド時に難読化され、結果としてrelease-notes.js内に含まれた状態で配布されていました。

このSDKには、認証用のユーザー名やパスワードを想起させる文字列が含まれており、それがセキュリティ上の懸念を引き起こしました。ただし、Astorino氏は「これらの情報は実際には機密情報ではなく、ビルドプロセスの不備によって偶発的に含まれてしまった」と説明しています。

現在の2つの拡張機能は完全に書き換えられており、安全に利用できるとのことです。