TeamPCPに関連するハッカーが、Visual Studio Code向け拡張機能「Nx Console」を汚染しました。信頼されていた開発者ツールが、認証情報や社内ソースコードを盗み出す経路に変わっています。
悪意のあるバージョンは2026年5月18日に公開されました。この攻撃は、セキュリティスキャナー、ソフトウェアパッケージ、クラウドインフラを標的としてきた一連のキャンペーンの拡大にあたります。
攻撃はGitHub従業員の端末にまで及びました。TeamPCPは約3,800件の社内リポジトリを盗んだと主張しています。GitHubはこの数字について、自社の調査結果と「方向性として一致している」と説明しました。
GitHubは、侵害されたエンドポイントを封じ込め、悪意のある拡張機能のバージョンを削除し、重要なシークレットのローテーションを開始したと明らかにしました。
GitHubは、顧客が所有するリポジトリ、組織、エンタープライズが影響を受けた形跡は確認していません。一方で、一部の社内リポジトリにはサポート対応の抜粋を含む顧客情報が含まれていたとして、注意を促しています。
TeamPCPは、Nx Consoleの事件より前からソフトウェアサプライチェーンを狙っていました。3月には、Aqua Securityの脆弱性スキャナー「Trivy」を侵害しました。さらに、盗んだ認証情報を使って、Checkmarx KICSやLiteLLMなどのツールにも到達しています。
攻撃には再現性のある手口が見られます。信頼されたソフトウェアを侵害し、認証情報を盗むコードを実行して、アクセス可能なシークレットを収集します。そして、それらを他のシステムへの攻撃に再利用します。
Trivyへの攻撃では、悪意のあるコードがGitHubランナーのプロセスメモリからシークレットを探索しました。セルフホスト型ランナーでは、SSH鍵、クラウドの認証情報、Kubernetesの設定ファイル、暗号資産ウォレットのデータなど、機密性の高い情報を50か所以上で確認しています。
ペイロードは、収集した情報をAES-256-CBCとRSA-4096公開鍵で暗号化しました。結果はtpcp.tar.gzにまとめられ、Aqua社の正規のアドレスに似せたドメインscan.aquasecurtiy.orgへのアップロードが試みられました。
このアップロードが失敗した場合でも、十分な権限を持つGitHubトークンがあれば、別の経路が使えます。tpcp-docsリポジトリを作成し、盗んだアーカイブをリリースに添付する方法です。
LiteLLMでは、別の実行手法が使われました。バージョン1.82.8に仕込まれた悪意のある.pthファイルは、Pythonの起動時にコードを実行できます。アプリケーションがLiteLLMをインポートする必要はありません。
その後のNx Console侵害により、この脅威は開発者のマシンに直接持ち込まれました。そこにあるトークンやソースコードが漏えいすれば、ワークステーションの外にある資産まで危険にさらされかねません。
汚染された拡張機能を削除しても、すでに盗まれた認証情報は無効になりません。防御側が失効させるまで、攻撃者は有効なトークンを使い続けることができ、リポジトリ、クラウドサービス、パッケージ公開用アカウントにアクセスできます。
キャンペーンのペイロードの一部は、永続化の仕組みも備えていました。研究者は、50分ごとにコマンドを確認するsysmon.pyサービスを特定しています。Kubernetesを標的としたコンポーネントは、特権付きのワークロードをデプロイする可能性があります。
防御側は、身に覚えのないtpcp.tar.gzアーカイブ、見慣れないtpcp-docsやdocs-tpcpリポジトリ、不審なsysmon.pyファイルを調査する必要があります。関連するネットワーク上の痕跡(IoC)には、scan.aquasecurtiy.org、models.litellm.cloud、checkmarx.zoneがあります。
組織は、漏えいしたトークンを失効させ、関連するシークレットをローテーションし、監査ログで不正アクセスの有無を確認すべきです。リポジトリの操作履歴やパッケージの公開履歴を見直せば、後続の侵害を特定しやすくなると、BlackFogは述べています。
予防策としては、GitHub Actionsをレビュー済みのコミットハッシュに固定すること、ジョブの権限を制限すること、OIDCフェデレーションによる短期間有効な認証情報を使うことが挙げられます。
開発者向け拡張機能の更新にも、慎重な確認が求められます。汚染されたNx Consoleのリリースは、わずか18分ほどしか公開されていなかったと伝えられています。
今回の事件は、1つの信頼された開発ツールが、はるかに大きな環境への侵入口になり得ることを示しています。インシデント対応では、マルウェアの除去と同じくらい、認証情報の封じ込めが重要です。
ANY.RUNを導入する16,000以上のSOCチームに加わり、脅威調査を効率化して手作業を減らしませんか。チームで試してみる
翻訳元: https://cyberpress.org/poisoned-nx-extension-steals/