【DevSecOps】Trivy 関連サプライチェーン攻撃 | Telnyx 侵害と WAV 隠蔽の脅威

  • URLをコピーしました!
目次

はじめに

2026 年 3 月に発覚した Trivy 開発環境の侵害に端を発する大規模なサプライチェーン攻撃は、NPM エコシステムや Python パッケージへと連鎖的に被害を拡大させています。

今回、脅威アクターである TeamPCP は、新たに Python の Telnyx パッケージを侵害し、悪意のあるバージョンを PyPI リポジトリへ公開しました。この攻撃は、以前の litellm 侵害で窃取された認証情報が悪用された三次被害である可能性が高く、さらに音声ファイル(.WAV)を用いた高度な隠蔽工作(ステガノグラフィ)が採用されています。

参考: The Hacker News
“TeamPCP, the threat actor behind the supply chain attack targeting Trivy, KICS, and litellm, has now compromised the telnyx Python package by pushing two malicious versions to steal sensitive data.”
(Trivy、KICS、および litellm を標的としたサプライチェーン攻撃の背後にいる脅威アクターである TeamPCP は、今回 telnyx の Python パッケージを侵害し、機密データを盗むために 2 つの悪意のあるバージョンをプッシュしました。)
https://thehackernews.com/2026/03/teampcp-pushes-malicious-telnyx.html

本記事では、Trivy 関連サプライチェーン攻撃の最新動向として、Telnyx パッケージ侵害の巧妙な手口を解説し、OS ごとに異なるマルウェアの挙動と、インフラエンジニアが直ちに実施すべき実践的な監査・防御策について整理します。

この記事でわかること
  • litellm 侵害から波及した Telnyx パッケージ(4.87.1 / 4.87.2)の汚染経路
  • 音声ファイル(.WAV)を利用したマルウェア隠蔽手法(ステガノグラフィ)の仕組み
  • Windows と Linux/macOS で異なるマルウェアの実行挙動と情報漏洩リスク
  • pip-audit 等を活用した依存関係の監査手順と多層的な防御アプローチ

PyPI を狙う TeamPCP のサプライチェーン攻撃と Telnyx パッケージ侵害

脅威アクター TeamPCP による一連の攻撃は、単一のツールに対する侵害に留まらず、窃取した認証情報を即座に次の標的へ転用することで、ソフトウェアサプライチェーン全体へ爆発的に被害を拡大させています。

Trivy や litellm から続く開発ツールへの標的型攻撃

今回の攻撃対象となった Telnyx パッケージへの不正アクセスは、以前の攻撃で得られた情報が起点となっています。セキュリティ研究機関の分析によると、TeamPCP は litellm 侵害の際に CI/CD パイプラインや環境変数から広範なシークレットを窃取しており、その中に Telnyx の PyPI パブリッシュトークンが含まれていたと考えられています。

参考: The Hacker News
“We believe the most likely vector is the litellm compromise itself,” Endor Labs researchers Kiran Raj and Rachana Misal said. “TeamPCP’s harvester swept environment variables, .env files, and shell histories from every system that imported litellm.”
(「最も可能性の高いベクターは litellm の侵害そのものであると確信しています」と Endor Labs の研究者 Kiran Raj 氏と Rachana Misal 氏は述べています。「TeamPCP のハーベスターは、litellm をインポートしたすべてのシステムから環境変数、.env ファイル、およびシェル履歴を掃引しました。」)
https://thehackernews.com/2026/03/teampcp-pushes-malicious-telnyx.html

これは、以前の記事で解説した「litellm バックドアの脅威」が、実際に他のプロジェクトを汚染するための武器として機能した(三次被害を引き起こした)ことを示しています。

悪意のある Telnyx パッケージ(4.87.1 / 4.87.2)の混入と WAV ファイルによる隠蔽工作

2026 年 3 月 27 日、TeamPCP は不正に入手した PyPI トークンを利用し、Telnyx パッケージの悪意のあるバージョン(4.87.1 および 4.87.2)を公式リポジトリへ公開しました。

この攻撃の最大の特徴は、マルウェアのペイロードを通常の実行ファイルや Base64 エンコードされた文字列として配置するのではなく、音声データ(.WAV)の中に隠蔽する「音声ステガノグラフィ」という手法を用いている点です。この手法は、ネットワーク検査や EDR(Endpoint Detection and Response)による検知をすり抜けることを目的としており、過去に TeamPCP が CanisterWorm やワイパーマルウェアをばら撒いた際の手口(過去記事参照)と完全に一致しています。

マルウェアのコードは telnyx/_client.py に注入されており、開発者が Python アプリケーション内で該当パッケージをインポートした瞬間に、外部の C2 サーバーから悪意のある WAV ファイルを密かにダウンロードして実行プロセスを開始します。

OS ごとに異なるマルウェアの挙動と情報漏洩リスク

TeamPCP によって仕掛けられたマルウェアは、ターゲットとなる OS(オペレーティングシステム)の特性に合わせて、戦略的に全く異なる挙動を示します。

参考: The Hacker News
“The strategic split is clear. Windows gets persistence: a binary in the Startup folder that survives reboots, providing the threat actor with long-term, repeatable access,” Socket explained. “Linux/macOS gets smash-and-grab: a single, high-speed data harvesting operation that collects everything of value and exfiltrates it immediately, then vanishes.”
(「戦略的な分割は明確です。Windows は永続性を得ます。再起動後も存続するスタートアップフォルダ内のバイナリにより、脅威アクターに長期的で反復可能なアクセスを提供します」と Socket は説明しました。「Linux/macOS はスマッシュアンドグラブ(ひったくり)です。価値のあるすべてを収集し、即座に流出させて消滅する、単一の高速データ収集操作です。」)
https://thehackernews.com/2026/03/teampcp-pushes-malicious-telnyx.html

Windows 環境における Startup フォルダへの永続化(msbuild.exe)

Windows 環境で悪意のあるパッケージが実行されると、外部の C2 サーバーから hangup.wav という名前の音声ファイルがダウンロードされます。マルウェアはこの音声データから実行ファイルを抽出し、システムの Startup フォルダに msbuild.exe という偽装された名前でドロップします。 この配置により、システムが再起動された後もユーザーがログインするたびに自動的にマルウェアが起動し、攻撃者に対して長期的かつ永続的なアクセス権(バックドア)を提供し続けます。

Linux/macOS 環境における一時ディレクトリを用いた高速なデータ窃取(Smash-and-Grab)

一方、Linux や macOS 環境では、システムへの永続化を試みません。代わりに ringtone.wav という別のファイルをダウンロードし、第 3 段階の収集スクリプトを抽出します。 このスクリプトは自己破壊型の一時ディレクトリ内で動作し、環境変数や .env ファイル、シェルの履歴など、システム内のあらゆる機密データを高速で収集します。窃取されたデータは tpcp.tar.gz としてアーカイブされ、HTTP POST リクエストを通じて外部の C2 サーバー(83.142.209[.]203:8080)へ即座に送信されます。処理が完了するとディレクトリごと痕跡を完全に消去するため、事後のフォレンジック調査が極めて困難になります。

自身の環境に対する影響確認と直ちに実施すべき初期対応

開発環境や CI/CD パイプラインがこのマルウェアの影響を受けていないか、以下の手順で直ちに確認し、該当する場合は被害を最小限に食い止める初動対応を実施する必要があります。

pip コマンドや requirements.txt を用いた対象バージョンの特定手順

今回の攻撃で悪意のあるコードが混入されたのは、Telnyx パッケージの特定の 2 つのバージョン(4.87.1 および 4.87.2)です。 まずは、開発環境や CI/CD のターミナルで以下のコマンドを実行し、インストールされているバージョンを確認してください。

pip show telnyx

また、リポジトリ内の requirements.txtPipfile などの依存関係定義ファイルに telnyx==4.87.1telnyx==4.87.2 が指定されていないかを厳密に監査します。もし該当するバージョンが発見された場合は、直ちにクリーンな旧バージョン(4.87.0)へダウングレードを実施してください。

侵害が疑われる場合のシークレットローテーションと C2 サーバーのブロック

もし悪意のあるバージョンが一度でも環境内でインポート(実行)されていた場合、システムはすでに侵害されているという前提でインシデント対応を行う必要があります。

全シークレットのローテーション

パイプラインやローカル環境に存在していたすべての API キー、クラウドアカウントのクレデンシャル、データベースのパスワードなどを直ちにローテーション(無効化して再発行)します。

Windows 環境のクリーンアップ

Startup フォルダを確認し、身に覚えのない msbuild.exe が存在する場合はプロセスを停止して即座に削除します。

通信の遮断

データの流出先である悪意のある IP アドレス(83.142.209[.]203)へのアウトバウンド通信をファイアウォール等でブロックし、追加の被害を防ぎます。

開発・運用環境を保護する多層防御と実践的監査ツール

今回の TeamPCP による一連の攻撃は、セキュリティスキャナ(Trivy)や AI ルーティングライブラリ(litellm)、そして通信 SDK(Telnyx)といった、自動化パイプラインにおいて特権アクセスを持ちやすい開発ツールそのものを意図的に狙っています。

参考: The Hacker News
“This puts a spotlight on anything in CI/CD environments that isn’t locked down,” Socket said. “Security scanners, IDE extensions, build tooling, and execution environments are granted broad access because they’re expected to need it. When attackers are targeting the tools themselves, anything running in the pipeline has to be treated as a potential entry point.”
(「これは、CI/CD 環境においてロックダウンされていないあらゆるものにスポットライトを当てています」と Socket は述べています。「セキュリティスキャナ、IDE 拡張機能、ビルドツール、および実行環境は、必要であると想定されているため、幅広いアクセス権が付与されています。攻撃者がツール自体を標的にしている場合、パイプラインで実行されているものはすべて、潜在的なエントリポイントとして扱う必要があります。」)
https://thehackernews.com/2026/03/teampcp-pushes-malicious-telnyx.html

ツール自体が汚染されるリスクを前提とし、開発・運用環境を保護するための多層的な防御策(Defense in Depth)を導入することが不可欠です。

pip-audit や safety を活用した依存関係の定期監査

手動でのバージョン確認には限界があるため、サードパーティ製ツールの脆弱性を自動検知する仕組みを導入します。 Python 環境であれば、pip-auditsafety といった専用の監査ツールを利用して、インストール済みのパッケージに既知の脆弱性(CVE)や悪意のあるバージョンが含まれていないかを定期的にスキャンします。

# pip-auditの実行例
pip-audit -r requirements.txt

CI/CD パイプラインの中に依存関係の監査ステップを必ず組み込み、問題が検出された場合は後続の処理(ビルドやデプロイ)を自動的にブロックする構成とすることが強力な予防策となります。

ハッシュ値検証の導入とコンテナ・仮想環境による実行環境の分離

パッケージのインストール時における安全性をさらに高めるため、requirements.txt にパッケージのハッシュ値を明記し、改ざんされたパッケージがインストールされるのを防ぎます。 pip install --require-hashes -r requirements.txt を用いて、検証に合格した正規のパッケージのみをインストールする運用を徹底することが推奨されます。

また、WAV ファイルを用いた一時ディレクトリでのデータ窃取や、Startup フォルダへの永続化(msbuild.exe)といったマルウェアの挙動に対抗するため、開発環境や CI/CD ランナーはホスト OS に直接構築せず、権限を最小化した Docker コンテナなどの一時的(エフェメラル)な隔離環境で実行し、影響範囲を物理的に封じ込めるアーキテクチャを採用することをお勧めします。

まとめ

本記事では、Trivy 侵害から波及した一連のサプライチェーン攻撃の続報として、Telnyx パッケージへのマルウェア混入の手口と対策について解説しました。

  • TeamPCP は窃取した PyPI トークンを悪用し、Telnyx パッケージ(4.87.1 / 4.87.2)を侵害した。
  • マルウェアは WAV ファイル(音声データ)内に隠蔽され、ネットワークの検知をすり抜ける。
  • Windows では Startup フォルダに永続化し、Linux/macOS では高速でデータを窃取・消去する。
  • 対象バージョンを直ちに排除し、CI/CD 内の全シークレットのローテーションを実施する。
  • pip-audit による監査やハッシュ値検証を導入し、開発環境を多層的に保護する。

以上、最後までお読みいただきありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

インフラ(クラウド/NW/仮想化)から Web 開発まで、技術領域を横断して活動するエンジニア💻 コンシューマー向けエンタメ事業での新規開発・運営経験を活かし、実戦的な技術ノウハウを発信中

[ Certs ] CCIE Lifetime Emeritus / VCAP-DCA ✒️ [ Life ] 技術書・ビジネス書愛好家📖 / 小・中学校で卓球コーチ👟

目次