この記事ではセキュリティに特化して解説します。AIセキュリティ全般は サプライチェーンセキュリティ完全ガイド2026|攻撃手法・防御ツール・実践チェックリスト をご覧ください。

何が起きたか

LLMへのAPIアクセスを一元管理するプロキシサービス「LiteLLM」が、PyPIへのサプライチェーン攻撃により侵害された。2026年3月24日10:52 UTCに悪意あるバージョンv1.82.8がPyPIに直接アップロードされ、FutureSearch社のエンジニアCallum McMahon氏が同日11:13 UTCに調査を開始。最初の症状から72分で公開ディスクロージャーに至った。CVE番号はPYSEC-2026-2が割り当てられている。

攻撃のタイムライン

攻撃から発見・対応までの経緯は分単位で記録されている。

時刻(UTC) イベント
10:52 悪意あるlitellm v1.82.8がPyPIにアップロード(GitHubタグなし)
10:58 Cursor IDEのfuturesearch-mcp-legacy依存が侵害パッケージを取得(14.9MB)
11:07 マルウェアが~/.config/sysmon/sysmon.pyへの永続化を試行
11:09 ユーザーがシステムを強制再起動(永続化ファイルは0バイトで中断)
11:13 調査開始。当初はClaude Codeの誤動作を疑う
11:40 バックグラウンドタスクがインストール済みパッケージを分析し、マルウェアを特定
11:58 隔離Dockerコンテナで感染を確認
12:00 PyPIセキュリティチームとLiteLLMメンテナーに通報
12:04 r/Python、r/netsec、r/LocalLLaMAに公開

マルウェアの動作内容

侵害パッケージに含まれていたlitellm_init.pthファイル(34KB)は、Pythonの.pthファイル自動実行機構を悪用し、import文なしで毎回のPython起動時にコードを実行する仕組みだった。

graph TD A[Python起動] --> B[.pthファイル自動実行] B --> C[認証情報の窃取] B --> D[外部への暗号化送信] B --> E[永続化サービスの設置] B --> F[Kubernetes横展開] C --> C1[SSH鍵] C --> C2[AWS/GCP秘密鍵] C --> C3[.envファイル] C --> C4[暗号ウォレット] D --> D1[RSA暗号化でmodels.litellm.cloudへ送信] F --> F1[特権Podの作成を試行]

具体的な機能として、SSH鍵・AWS/GCPシークレット・Kubernetesトークン・.envファイル・データベースパスワード・暗号ウォレット・シェル履歴の窃取、RSA暗号化によるhttps://models.litellm.cloud/への送信、systemdサービスによる永続化、Kubernetesクラスタ内での特権Pod作成による横展開を試みていた。さらに、サブプロセスの再帰的な.pth実行により11,000プロセスのフォーク爆弾が発生し、システムクラッシュを引き起こした。

エンジニアへの影響

  • 即座の対応が不可避:LiteLLMを依存関係に含むプロジェクトはv1.82.8の使用有無を確認し、緊急更新が必要
  • API認証情報の危機:LiteLLMを経由するOpenAI・Anthropic・Google APIキーが漏洩リスクにさらされた
  • サプライチェーンの構造的脆弱性:GitHubタグが存在しないPyPIバージョンの検出が防御策として有効
  • .pthファイルのリスク認知:import不要の自動実行機構の悪用は従来の依存関係スキャンでは検出困難

推奨される対応手順

影響を受けた可能性がある場合は、以下の手順を実施する。使用中のLiteLLMバージョンを確認し、v1.82.8が含まれていた場合はSSH鍵・クラウド認証情報・APIキーの即時ローテーションを実行。uvキャッシュの削除(rm -rf ~/.cache/uv)、Kubernetesクラスタ内の不審なPodの確認も必要である。Future Search社のブログに発見から対応までの詳細なプロセスが記録されている。

関連記事: サプライチェーンセキュリティ完全ガイド2026|攻撃手法・防御ツール・実践チェックリスト

参考リンク


この記事はAI業界の最新動向を速報でお届けする「AI Heartland ニュース」です。