「模擬面接」という名目の偽のリポジトリがNext.js開発者を秘密盗聴マルウェア実行へ誘い込む

Next.js開発者が再び標的にされています。Microsoftによると、ハッカーは正規のプロジェクトを装った悪意のあるリポジトリをばらまいており、これらのリポジトリの一部は確認された侵害に直結していたとのことです。

Microsoftは、これらのリポジトリは開発者のマシン上で実行するためにさまざまな方法を使用していますが、すべて同じ結果に導くと述べました。つまり、悪意のあるJavaScriptのメモリ内実行です。

研究チームが特定したすべての実行パスは、Next.js開発者の通常の作業ルーチン中にトリガーされるよう設計されています。例えば、1つのパスはVisual Studio Codeのワークスペース自動化を悪用して、開発者がプロジェクトを開いて信頼するとすぐにファイルをロードします。

これらの場合、バリエーションはVercelからJavaScriptローダーを取得し、Node.jsを使用して実行し、その後、攻撃者が制御するコマンド・アンド・コントロール(C2)インフラストラクチャーへのビーコニングを開始してさらなるタスクを取得します。

他のパスには、対象の開発者がnpm run devを通じて直接またはプロジェクトの開発サーバーを実行することが含まれます。この場合、トロイア化されたアセットまたは変更されたライブラリ(変更されたフロントエンドファイルなど)に埋め込まれた悪意のあるロジックがローダーを取得して実行します。他は、被害者がアプリケーションのバックエンドを起動すると、サーバーの初期化またはモジュールのインポート中にバックエンドモジュールに隠されたプリロードされたロジックがトリガーされることに依存しています。

どのパスを取るかに関わらず、最終結果は常に影響を受けたデバイスを登録し、JavaScriptローダーを実行し、攻撃者のC2インフラストラクチャーとの接続を確立することです。

初期段階で受け渡された別のC2 IPアドレスとAPIセットを使用して、コントローラーはJavaScriptタスクのmessages[]配列を取得し、ディスク上のアーティファクトを削減するために別のNodeインタープリターを使用してメモリ内で実行します。

このプロセスはデータ流出も可能にします。開発者マシン上では、個人データからソースコード、秘密、またはクラウドリソースまで、あらゆるものが流出する可能性があります。

Microsoftによると、コントローラーは攻撃者の指示を受け取るだけでなく、アンチマルウェアソリューションと人間のディフェンダーが疑わしい活動のパターンを識別するのを防ぐために、その識別子をローテーションすることができるとのことです。

コントローラーはキルスイッチまたはシャットダウンコマンドに従い、パフォーマンスの問題に基づいて被害者が何か問題があることを疑わないようにするために生成されたプロセスを追跡し、エラーテレメトリーを報告して、攻撃者が失敗したコマンドを調整できるようにします。

これらのプロジェクトは悪意のある者によって、採用プロセスの一部として使用されているという名目の下で配布され、開発者は職務申請に関連するタスクを完了する必要があります。

標的となった開発者がこれらの面接評価タスクを企業のマシンで完了することは想像しがたいですが、Microsoftはそうすることで組織がより広範な侵害にさらされる可能性があると警告しました。

また、「重要なポイントは、ディフェンダーが開発者ワークフローを主要な攻撃面として扱い、異常なNode実行、予期しないアウトバウンド接続、および開発マシンから発生するフォローアップの発見またはアップロード動作への可視性を優先することです」と述べています。®

翻訳元: https://go.theregister.com/feed/www.theregister.com/2026/02/25/jobseeking_nextjs_devs_attack/

ソース: go.theregister.com