依存関係フォルダ内にマルウェアを埋め込む19個のVisual Studio(VS)Code拡張機能が関わるキャンペーンが、サイバーセキュリティ研究者によって発見されました。
2025年2月から活動していますが12月2日に特定されたこの作戦では、正当なnpmパッケージを使用して有害ファイルを偽装し、PNG画像を装ったアーカイブ内に悪意のあるバイナリを束ねていました。
ReversingLabs(RL)が観察したこのアプローチにより、攻撃者は従来のチェックを回避し、開発者を直接ターゲットにできました。
進化するフィッシング戦術
新たな悪意のあるVS Code拡張機能のウェーブが2025年を通じて流通しており、ReversingLabsはVS Code Marketplaceへの疑わしいアップロードが着実に増加していることを指摘しています。
一部の拡張機能は人気のあるツールを模倣していますが、他の拡張機能は新機能を宣伝しながら秘密裏に不要なコードを実行しています。信頼できる拡張機能でも侵害される可能性があります。7月には、悪意のあるプルリクエストが正当なプロジェクトを汚染しました。
この新しいキャンペーンでは、攻撃者は拡張機能のnode_modulesフォルダ内にnpmパッケージpath-is-absoluteの変更版を埋め込みました。
元のパッケージは2021年以来90億回以上ダウンロードされ広く使用されていますが、変更版にはVS Codeが起動したときにマルウェアをトリガーするように設計されたクラスが含まれていました。その目的は「lock」という名前のファイルに保存されているJavaScriptドロッパーをデコードすることでした。
Visual Studio Code供給チェーンの脅威についてもっと詳しく読む:悪意のあるVS Code拡張機能が高度なインフォスティーラーを展開
攻撃者はbanner.pngという名前のファイルも含めていました。これは無害に見えましたが、2つのバイナリを含むアーカイブとして開かれました。
ドロッパーはこれらのファイルをcmstp.exeを介して起動しました。cmstp.exeは一般的なliving-off-the-land バイナリ(LOLBIN)です。1つの実行ファイルはキープレスをシミュレートしてプロセスを閉じましたが、もう1つはこのレポート時点でまだ分析中だったRustベースのトロイの木馬でした。
開発者への増加する脅威
ReversingLabsは、ほとんどの悪意のある拡張機能が変更されたpath-is-absolute依存関係に依存していましたが、他の4つの拡張機能は代わりにnpmパッケージ@actions/ioを武器化し、偽装されたPNGを使用する代わりにTypeScriptおよびマップファイルにペイロードを保存していたと述べています。
技術は異なっていましたが、目標は同じでした。信頼できるコンポーネントを通じて秘密裏にマルウェアを実行することです。
ReversingLabsが警告したように、悪意のあるVS Code拡張機能の検出はますます緊急の問題になっています。同社は、2024年の27件から2025年の最初の10ヶ月で105件に検出数が増加したと述べています。
リスクを軽減するため、チームは以下の対策を推奨されます:
-
インストール前に拡張機能を検査する
-
すべてのバンドルされた依存関係を監査する
-
パッケージの動作を評価できるセキュリティツールを使用する
「安全を保つことは、拡張機能を完全に避けることではなく、信頼できるコンポーネントでさえ改ざんされる可能性があることを認識することです」とReversingLabsが述べました。
「言及されたすべての拡張機能はMicrosoftに報告されました。」
翻訳元: https://www.infosecurity-magazine.com/news/malware-discovered-in-19-vs-code/