Contagious InterviewがVS Codeを攻撃ベクターに変える

このキャンペーンの背後にいる脅威アクターは、Microsoft Visual Studio Codeの信頼されたワークフローを悪用して、悪意のあるコードを実行・永続化しています。

長期にわたって続くContagious Interviewキャンペーンの背後にいる脅威アクターが、従来のソーシャルエンジニアリングの誘い文句から、Microsoft Visual Studio Code(VS Code)を実行および永続化の仕組みとして悪用する手口へと拡大していることが確認されました。

Jamf Threat Labsの新たな調査結果によると、攻撃者は悪意のあるロジックをVS Codeのプロジェクト構成に直接埋め込み、被害者がリポジトリを開いて「信頼」を付与した瞬間にコードが実行されるようにしています。

スタンドアロンのマルウェアやエクスプロイトチェーンに依存するのではなく、キャンペーンは、信頼された開発者ワークフローに軸足を移しています。被害者は、面接課題や共有プロジェクトを装ってGitリポジトリをクローンするよう誘導されます。VS Codeで開くと、武器化された構成ファイルが自動的にコマンドをトリガーし、悪意のあるJavaScriptペイロードを取得して実行します。

OSやブラウザを直接狙うのではなく、DPRK(北朝鮮)関連のアクターは、開発者が日常的に使うこのIDEツールの内部に入り込み、手間を減らし、疑念を回避し、信頼された環境内でステルス性を確保しています。

永続的なバックドアのために武器化されたVS Code

新しい手法は、ビルドやスクリプトなどの開発作業を自動化するために設計されたVisual Studio Codeのtasks.jsonファイルの悪用を中心にしています。Jamfが観測した攻撃では、これらのタスク定義が改変され、リポジトリが開かれてユーザーにより信頼されると自動的に実行される隠しコマンドが含まれていました。

これらのコマンドはシェルプロセスを実行し、リモートのインフラから難読化されたJavaScriptを取得してNode.jsに直接パイプし、実行します。Jamfの研究者は、ペイロードがVercelのような正規のプラットフォーム上でホストされていることが多く、早期検知やブロックの可能性をさらに低下させていると指摘しました。実行されると、JavaScriptはリモートのコマンド&コントロール(C2)サーバーとの通信を確立し、リモートコード実行(RCE)を可能にします。

重要なのは、このバックドアがVS Codeを開いたままであることに依存しない点です。初回実行後、悪意のあるコードは独立して永続化できるため、IDEを閉じても活動は止まりません。これにより、一度きりの開発タスクに見えるものが、被害者のシステム上に長期的な足場を築くことになります。

このキャンペーンの有効性は、技術的な脆弱性悪用ではなくソーシャルエンジニアリングに依存しています。被害者は、正当らしく見えるプロジェクトの一部として、見慣れないリポジトリとやり取りするよう騙されます。リポジトリが開かれると、VS Codeに組み込まれた信頼プロンプトが鍵となり、承認すると追加の警告なしに悪意のあるタスク実行チェーンが有効化されます。

Jamfの研究者は、攻撃フローに冗長性が組み込まれていることも確認しました。場合によっては、埋め込みJavaScriptを含む辞書ファイルなどのフォールバック機構が用意され、主要なタスクベースの配信が失敗してもコード実行が確実になるようにしていました。さらに、初回実行の数分後に追加のペイロードが取得される事例も見られ、段階的な永続化と継続的な制御が示唆されます。

研究者は、検知を支援するため、調査中に観測された悪性インフラやアーティファクトなど、このキャンペーンに関連する侵害指標(IoC)を共有しました。加えて、見慣れないリポジトリ、特に第三者経由や面接形式のやり取りで入手したものと関わる際には注意するよう推奨しました。「Visual Studio Codeでリポジトリを信頼済みにする前に、その内容を確認することが重要です」と、ブログ投稿で付け加えています。「同様に、『npm install』は精査済みのプロジェクトでのみ実行すべきであり、意図せず悪意のあるコードを実行してしまうことを避けるため、package.jsonファイル、インストールスクリプト、タスク構成ファイルに特に注意を払うべきです。」

翻訳元: https://www.csoonline.com/article/4119927/contagious-interview-turns-vs-code-into-an-attack-vector.html

ソース: csoonline.com