Checkmarxツーリングを標的とするサプライチェーン攻撃により、開発者環境が公開されました。
攻撃者は悪意のあるDockerイメージをプッシュし、認証情報およびその他の機密データを盗む改ざんされた拡張機能を提供しました。
「これは過去1ヶ月間で加速している危険なトレンドが続いています。CI/CDパイプラインが新しいペリメータになりました」とTeam CymruのサイバースレットインテリジェンスアドバイザーであるEli Woodward氏がeSecurityPlanetへのメールで述べました。
彼は次のように付け加えました。「派手なゼロデイや洗練されたフィッシングキャンペーンの代わりに、TeamPCPは私たちの技術エコシステム全体で信頼できるリソースを系統的に悪用しています。」
Checkmarx サプライチェーン攻撃の内部
侵害の中心は、Terraform、Kubernetes、およびその他のクラウド構成ファイルをセキュリティリスクについてスキャンするために設計された広く使用されているツールであるKeeping Infrastructure as Code Secure(KICS)です。
Socket研究者は、攻撃者がcheckmarx/kics Docker Hubリポジトリの公式イメージに毒を仕込み、バンドルされたKICSバイナリを変更して隠れたデータ収集機能を含めたことを発見しました。
その結果、スキャン出力(機密設定の詳細、認証情報、またはシークレットを含むことが多い)が静かに収集され、攻撃者が管理するインフラストラクチャに送信される可能性がありました。
KICSが一般的にCI/CDパイプラインに埋め込まれているため、リスクが増幅されます。つまり、組織は定期的な自動スキャン中に機密インフラストラクチャデータを無意識に公開した可能性があります。
v2.1.20、alpine、debian、latestなど、一般的に使用されるいくつかのタグが、復元される前に一時的に悪意のあるイメージにリダイレクトされました。
正規のアップストリームリリースに対応していないにもかかわらず、不正なv2.1.21タグも導入されました。
悪意のあるVS Code拡張機能とペイロード配信
調査が進むにつれて、インシデントが単なる侵害されたコンテナイメージを超えていることが明らかになりました。
研究者はCheckmarx関連のVS Code拡張機能で疑わしい動作を特定し、複数の配布チャネル全体での広範で調整されたサプライチェーン攻撃を指しています。
深い分析により、特定の拡張機能バージョン(特に1.17.0と1.19.0)がBunランタイムを使用してmcpAddon.jsという2段階目のペイロードをダウンロードして実行する隠れた機能を含んでいることが明らかになりました。
ペイロードはCheckmarxのリポジトリのバックデートされ、操作されたコミットに関連するハードコードされたGitHub URLから取得され、攻撃者が信頼されたソースを活用して検出を回避することを可能にしました。
認証情報の盗難と攻撃の伝播
mcpAddon.jsペイロードは包括的な認証情報収集ツールとして機能し、GitHubトークン、クラウド認証情報、npm設定、SSHキー、および環境変数などの機密データを対象としています。
収集されると、データは圧縮され、暗号化され、外部インフラストラクチャと攻撃者が管理するパブリックGitHubリポジトリに流出され、時には被害者アカウント内に格納されます。
場合によっては、リポジトリメタデータとコミットメッセージも秘密のステージングチャネルとして使用されました。
このキャンペーンは洗練された、多段階のソフトウェアサプライチェーン侵害を表しています。
タグの上書きによるDockerイメージ中毒、バックデートされたコミットによるGit履歴操作、開発者拡張を通じたRCE、およびCI/CDパイプラインの悪用などの手法を組み合わせます。
盗まれたGitHub認証情報を使用して、マルウェアはシークレットを含むリポジトリを特定し、新しいブランチを作成し、それらのシークレットをアーティファクトとして抽出するための悪意のあるワークフローを注入することで伝播します。
これらのワークフローはコミット時に自動的に実行され、後で法医学的な可視性を減らすために削除され、攻撃がリポジトリ、組織、およびパイプライン全体にスケーリングすることを可能にします。
属性と広範な影響
研究者は動作可能な攻撃チェーンを確認しましたが、操作の一部はまだ活発に調査中です。
A threat actor group known as TeamPCPとして知られるスレット・アクターグループがこのインシデントの責任を主張しています。
このキャンペーンはCheckmarxツーリングを超えて拡張されているようです。
別の調査結果は、Bitwarden CLIも同様のGitHub Actionsベクトルを通じて侵害されたことを示しており、開発者ツールとCI/CDパイプラインを標的とした広範なサプライチェーン攻撃を示唆しています。
SocketのリサーチチームはBitwardenインシデントも引き続き調査しています。
サプライチェーンリスクを削減する方法
組織はこのインシデントをスタンドアロンのツール問題ではなく、サプライチェーンと認証情報の漏露問題として扱うべきです。
迅速な封じ込めは重要ですが、長期的なリスク削減はCI/CDパイプライン、依存関係、およびアイデンティティ管理全体の制御を強化することに依存します。
- 影響を受けたすべてのCheckmarx Dockerイメージ、拡張機能、および関連するアーティファクトを削除し、不変のダイジェストに固定された検証済みの信頼できるバージョンに置き換えます。
- 潜在的に公開されたすべての認証情報(GitHubトークン、クラウド認証情報、npmトークン、SSHキー、およびCI/CDシークレットを含む)をローテーションし、可能な限り短命のまたはジャストインタイム認証情報に移行します。
- 不正なリポジトリ、注入されたワークフロー、疑わしい実行、予期しないアーティファクト生成またはダウンロードについて、GitHubおよびCI/CD環境を監査します。
- ワークフローの作成を制限し、トークンの権限を制限し、最小権限を実行し、新しいまたは修正されたワークフローの承認を要求することによってCI/CDパイプラインをハードンします。
- エンドポイント、ビルドシステム、およびクラウド環境を監視して異常な動作(予期しないランタイム実行(例:Bun)、認証情報アクセス、および異常なトークン使用など)を検出します。
- 依存関係をピン止めし、アーティファクトを検証し、レジストリの許可リストを実行し、可視性のためのSBOM追跡を実装することによってサプライチェーンセキュリティを強化します。
- インシデント対応計画をサプライチェーン攻撃シナリオでテストして、検出、封じ込め、および復旧機能を検証します。
これらの手順を実行することで、組織はサプライチェーン攻撃に対する耐性を構築し、侵害が発生した場合の潜在的なブラスト半径を制限するのに役立ちます。
サプライチェーン脅威へのシフト
このインシデントは、信頼できるツールを侵害して単一のエントリーポイントを通じて複数の環境へのアクセスを提供できる、ソフトウェアサプライチェーンに向かった攻撃者フォーカスの広範なシフトを反映しています。
盗まれたトークン、キー、およびシークレットがシステム、パイプライン、およびクラウド環境全体での永続性と移動を可能にする認証情報ベースの攻撃に対するフォーカスも強調しています。
これらの進化するリスクは、組織がゼロトラスト・ソリューションを使用してトラストの管理とサプライチェーン・インシデントのブラスト半径を制限する理由です。