「改ざんされたバージョンを実行していた疑いがある場合は、すべてのパイプラインシークレットが侵害されたと見なし、直ちにローテーションしてください」とTrivy保守者は述べています。
攻撃者は広く使用されているオープンソースのTrivy脆弱性スキャナーを侵害し、公式リリースと数千のCI/CDワークフローで使用されるGitHub Actionsに認証情報窃取マルウェアを注入しました。影響を受けたプロジェクトと組織がシークレットを直ちにローテーションしない場合、この侵害は追加のサプライチェーン侵害のカスケードを引き起こす可能性があります。
本日Trivy保守者によって公開されたこの攻撃は、先月遅くに発表された以前の侵害に由来し、安全でないGitHub Actionsも活用し、複数のプロジェクトに影響を与えました。セキュリティ企業のSocketとWizは、根本原因を最初の侵害後の不完全な認証情報ローテーションに追跡し、攻撃者がTrivy環境に戻って悪質なコミットを導入することを可能にしました。
「改ざんされたバージョンを実行していた疑いがある場合は、すべてのパイプラインシークレットが侵害されたと見なし、直ちにローテーションしてください」とTrivy保守者のItay ShakuryはGitHub上で述べています。
複数のコンポーネントが改ざん
Aqua Securityで開発されたTrivyは、最も広く使用されているオープンソース脆弱性スキャナーの1つであり、GitHubで32,000以上のスターとDocker Hubで1億回以上のダウンロードを誇ります。開発者はそれを使用して、CI/CDパイプラインとコンテナイメージの脆弱性と露出したシークレットを検出します。
攻撃者はTrivyプロジェクトの3つのコンポーネントを侵害しました:CI/CDワークフロー内でTrivyスキャンを実行するための公式GitHub ActionであるTrivy-action、スキャナーをインストールするためのヘルパーアクションであるsetup-trivy、およびTrivyバイナリ自体です。改ざんされたアーティファクトはGitHubリリース、Docker Hub、GitHub Container Registry、およびAmazon Elastic Container Registryに公開されました。
Socketによれば、trivy-actionの76個のバージョンタグのうち75個が悪質なコードで上書きされ、setup-trivyの7つのタグも同様でした。影響を受けなかった唯一のtrivy-actionタグはバージョン0.35.0でした。改ざんされたタグには、0.34.2、0.33.0、0.18.0など、広く使用されているバージョンが含まれています。
「悪質なバイナリが実行されると、正規のTrivyサービスと悪質なコードが並行して開始されます」とWiz研究者は攻撃の分析で述べています。
攻撃者は開発シークレットを探している
GitHub Actionsランナー上で、認証情報スティーラーはプロセスメモリを読み取ってシークレットを抽出し、ファイルシステムを検索してSSHキー、クラウドプロバイダの認証情報、Kubernetesトークン、Dockerレジストリ構成、および暗号通貨ウォレットを探します。
盗まれたデータは暗号化され、Aqua Securityの正規サイトを模倣したタイポスクワッティングドメインに送信されます。これが失敗した場合、マルウェアは被害者自身のGitHubアカウント上で「tpcp-docs」という名前の公開リポジトリを作成し、暗号化されたデータをそこにアップロードするようにフォールバックします。
Wizによれば、この攻撃は開発者マシンに永続的なPythonドロッパーもインストールし、それが攻撃者制御のサーバーに5分ごとに接続して、実行する追加のペイロードを検索します。
ステルス的なタグ操作手法は検出を回避
新しいリリースを作成する代わりに、これにより通知がトリガーされます。攻撃者は既存のバージョンタグを強制的にプッシュして、新しい悪質なコミットを指すようにしました。Gitタグはその指紋によって特定のコミットを参照するポインターです。これらのポインターが向く先を上書きすることによって、タグを参照するワークフローは攻撃者のコードをプルし始めます。
さらに検出を避けるために、攻撃者は著者名、メールアドレス、タイムスタンプ、メッセージなどの元のコミットメタデータを複製し、悪質なコミットを置き換えた正規のコミットと同一に見えるようにしました。この偽造は暗号署名の欠落とタイムスタンプ関係の矛盾など、微妙な痕跡を残しました。
同じタグ操作手法は、1年前のtj-actions/changed-filesのGitHub Action侵害で使用され、23,000のリポジトリに影響を与えました。
被害者への教訓
Trivy初期侵害は2月下旬に発生し、攻撃者が2025年10月以来リポジトリに存在していた設定ミスのあるGitHub Actionsワークフローを悪用しました。外部プルリクエストによってトリガーされるワークフローはリポジトリシークレットにアクセスして実行されました。これはGitHub Actionsで以前記録されてきた危険なパターンです。
攻撃者は書き込み権限を持つ個人アクセストークン(PAT)を盗み、それを使用してリリースを削除し、リポジトリの名前を変更し、悪質なVisual Studio Code拡張機能を公開しました。Trivy保守者は認証情報をローテーションしましたが、プロセスがその一部を見落としたようです。
この失敗は、特にCI/CDセキュリティを専門とする企業によるものであり、特にマルウェアが同じ種類の認証情報を盗むように設計されているため、この新しい攻撃の影響を受ける組織への警告として機能すべきであり、これは自身のパイプラインでサプライチェーン侵害を可能にする可能性があります。
繰り返されるパターン
Trivy侵害はGitHub Actionsを対象とした攻撃の増加するパターンの最新のものであり、一般的には開発者です。昨年のtj-actions/changed-files侵害は同じタグ操作アプローチを使用し、後にreviewdog/action-setupアクションの上流侵害に追跡されました。2025年の他の事件には、327のGitHubユーザーから3,000以上のシークレットを盗んだGhostActionキャンペーンと、脆弱なpull_request_targetワークフローを悪用したnx npmパッケージへの攻撃が含まれました。
GitHub は2025年12月にpull_request_targetワークフローのデフォルト動作を変更して悪用のリスクを軽減しましたが、Trivyリポジトリの脆弱なワークフローはその変更より前の日付でした。
Trivyを使用している組織は、タグ操作攻撃を防ぐため、バージョンタグではなく完全なコミットSHAハッシュに対してGitHub Actionsをピン止めすべきです。安全なバージョンはTrivy v0.69.3、trivy-actionタグ0.35.0、およびsetup-trivy 0.2.6です。セキュリティチームはまたtpcp-docsという名前のリポジトリについて自身のGitHubアカウントを検索すべきであり、これは成功したフォールバック流出を示し、コマンドアンドコントロールドメインとそのIPアドレスをネットワーク境界でブロックします。