
2026/03/27 0:48
**LiteLLM マルウェア攻撃に対する私の時間別対応策**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
要約
悪意のあるホイール、
(約14.9 MiB)が 2026年3月24日 10:52 UTC に PyPI にアップロードされました。パッケージには litellm==1.82.8
.pth ファイル(litellm_init.pth)が34 KBあり、Python インタプリタが起動するたびに自動的に実行されます。このファイルは再帰的な子プロセスを生成し、11キロプロセスのフォークボムを作成します。フォークボムが稼働している間にペイロードは SSH キー、GCP/AWS/K8s の認証情報、.env ファイル、暗号通貨ウォレットデータ、シェル履歴その他の秘密情報を収集し、ハードコードされた RSA 鍵で暗号化して https://models.litellm.cloud に POST します。
マルウェアはまた、ユーザーの
~/.config/sysmon/ ディレクトリ(11:07 UTC に作成)にゼロバイトの sysmon.py サービスを書き込み、永続化を試みます。さらに、特権 Kubernetes ポッドへの横方向移動コードも含まれていますが、macOS ではサービスアカウントトークンが欠如して失敗します。
拡散チェーン:
- Cursor → futuresearch‑mcp‑legacy v0.6.0(
コマンド経由)が伝播依存関係uvx
を取得。litellm - 悪意あるホイールがインストールされ、
ファイルが Cursor および関連ツールで使用されるすべての Python インタプリタ上で自動実行。.pth
検知タイムライン:
- 10:52 UTC – PyPI に毒入りホイールがアップロード。
- 10:58 UTC –
がパッケージを取得。futuresearch‑mcp‑legacy - 11:07 UTC – 永続化試行実行。
- 11:09 UTC – 強制再起動で永続化が中断され、フォークボムが観測。
直ちに取られた対策:
- PyPI セキュリティ (
) と LiteLLM メンテナへメール送信。security@pypi.org - 公開ディスクロージャーブログ投稿(PR へのリンク)。
- 関連サブレディット (r/Python, r/netsec 等) に事案共有。
緩和推奨事項:
- すべての SSH キー、GCP/AWS/K8s 認証情報、Kubernetes kubeconfig ファイル、および
秘密情報をローテーション。.env - UV キャッシュを削除 (
)。rm -rf ~/.cache/uv - Cursor の自動更新を無効化;手動でアップデート適用。
- プロセス制限を設定 (
) してフォークボムを防止。ulimit -u 2048
報告状況:
- PyPI:
の yank 待機中。litellm==1.82.8 - GitHub: セキュリティアドバイザリーが
で開設済み。github.com/BerriAI/litellm/security
Cursor または関連ツールを使用している組織は、フォークボムクラッシュやデータ外部流出の兆候に注意し、すべての認証情報をローテーションし、永続化機構が残っていないことを確認してください。
本文
Litellm v1.82.8 – PyPIサプライチェーン攻撃
何が起きたのか?
2026年3月24日、litellm の wheel(v1.82.8)が GitHub のリリースプロセスを経ずに PyPI に公開されました。
この wheel は
litellm_init.pth ファイルを含んでおり、Python インタープリタが起動するたびに自動的に実行されます。その一行コードは子プロセスとして別の Python を生成し、base64 でエンコードされたペイロードを実行します。このペイロードは次のことを行います。
- 認証情報の収集 – SSH キー、GCP/AWS/K8s トークン、
ファイル、データベースパスワード、暗号ウォレット、シェル履歴など。.env - 取得したデータを
に暗号化して送信。https://models.litellm.cloud/ - 永続化 –
に systemd サービスを書き込みます。書き込み中に被害者が 11:09 に強制再起動したため、空ファイルが残ったのみです。~/.config/sysmon/sysmon.py - さらに子プロセスを生成し
ファイルを再実行させることで指数関数的なフォークボム(≈ 11,000 個の Python プロセス)を発生させ、ラップトップをほぼ停止状態にしました。.pth
攻撃は Cursor → futuresearch‑mcp‑legacy → litellm という経路で始まりました。
被害者が
uvx futuresearch-mcp-legacy を使用していたため、自動的に改ざんされた wheel が取得されました。
直ちに行った対策
| 対策 | 結果 |
|---|---|
メール: と LiteLLM メンテナ(BerriAI)へ送信 | v1.82.8 の即時 yank 要求、GitHub でセキュリティアドバイザリーを開設 |
UV キャッシュの削除 () | 悪意ある wheel のすべてのキャッシュコピーを削除 |
認証情報のローテーション – SSH キー、GCP 資格情報、Kubernetes 設定、 秘密 | 盗まれた可能性のあるシークレットの再利用を防止 |
K8s クラスター確認 – や sysmon ポッドなし | 横方向移動は発生していないことを確認 |
ファイル削除 – は 0 バイトで削除済み | 永続化ベクトルを排除 |
あなたが取るべき行動
- 該当マシン上で使用している すべての SSH、GCP、Kubernetes、その他の秘密鍵 を失効させる。
- UV キャッシュを削除 (
) し、悪意ある wheel のキャッシュコピーを排除する。rm -rf ~/.cache/uv - site‑packages ディレクトリで
を検索し、見つかったら削除する。litellm_init.pth - litellm を安全と確認済みのバージョン(例:
)にアップグレードまたは再インストールする。<1.77.3 - v1.82.8 の他のインストールがあれば、PyPI と LiteLLM メンテナへ報告する。
なぜ重要なのか
- この侵害は、広く使われている AI ライブラリでさえサプライチェーン攻撃により武器化され得ることを示しています。
ファイルの自動実行は Python のすべての起動時 にペイロードが走るため、膨大な攻撃表面を持ちます。.pth- フォークボムはシステムを破壊するだけでなく、情報漏洩の時間窓も拡大します。
報告状況
すでに以下を実施済みです:
にメールし、v1.82.8 の即時 yank を要求。security@pypi.org- GitHub でセキュリティアドバイザリーを開設:
。github.com/BerriAI/litellm/security/advisories
これらの報告書作成や送付にご協力が必要な場合は、お知らせください。