概要
- 2026年3月24日に発生した litellm 1.82.8 サプライチェーン攻撃 の調査・対応記録
- AIツール により、マルウェアの発見・公開までが 72分 で完了
- Claude Code による自動化された分析・報告プロセス
- 被害内容 は認証情報の窃取・永続化・自己増殖型フォークボム
- 再発防止策 と、AI活用の今後の課題提起
litellm 1.82.8 サプライチェーン攻撃 調査・対応記録
- 2026年3月24日、 litellm v1.82.8 がPyPIにアップロード、 GitHubタグ未存在
- futuresearch-mcp-legacy が依存関係として感染バージョンを取得
- uvx 経由でlitellmをダウンロードし、マルウェア混入
- マルウェアによる永続化試行
- ~/.config/sysmon/sysmon.py作成(書き込み中断で0バイト)
- 11,000プロセスのフォークボム発生
- 強制再起動で永続化失敗、マルウェア部分的に無効化
- Claude Codeによる初動調査
- 当初は無限ループと誤認、後にマルウェアと判明
- litellm_init.pthの発見
- Python起動時に自動実行、 認証情報窃取・K8s横展開・情報流出
- Docker隔離環境で感染再現を確認
- pthファイル含有の新規ダウンロードで感染を再現
- 公開までの流れ
- Disclosureブログ記事をClaude Codeが自動生成し、3分で公開・PR作成・マージ
- r/Python, r/netsec, r/LocalLLaMAに共有
- 最初の症状発生から公開まで72分
マルウェアの詳細
- .pthファイル による自動実行機構
- Python起動時に毎回実行、 SSH鍵・AWS/GCP認証・K8sトークン・DBパスワード等を収集
- RSA暗号化 でhttps://models.litellm.cloud/ へ情報送信
- 永続化手法
- systemdサービス(~/.config/sysmon/sysmon.py)を用意
- 自己増殖
- subprocess.run([sys.executable, ...])で子プロセスを生成、 無限再帰的に.pthが再実行
- これにより フォークボム 発生
- Kubernetesクラスタへの横展開
- 特権Pod作成で他ノードへ感染拡大
AIツールによる対応の変化と今後の課題
- AIツールの進化 で、専門知識がなくても迅速なインシデント対応が可能
- MacOSのシャットダウンログ解析やDockerコマンド等の詳細知識が不要
- AIが技術的作業を代行、人間は意思決定や公開対応に専念
- Claude Code は疑念を持つことで初めてマルウェア検出へ至った
- AIモデルへのセキュリティ意識強化 の必要性
- 今回の事例で AIと人間の協働 による迅速な被害抑制が実現
再発防止策・推奨事項
- Cursorの自動アップデート無効化 (Settings → "update.mode": "manual")
- プロセス数制限 (.zshrcにulimit -u 2048追加)
- 不要なMCPサーバーの削除
- futuresearch-mcp-legacyの無効化またはAPIキー設定
- 不審なPythonパッケージの監視強化
AI活用とセキュリティ教育の今後
- フロンティアラボはAIモデルに攻撃検知能力を持たせるべきか?
- 人間の健全な懐疑心とAIの自動化能力のバランス
- AI主導の対応プロセス が今後の標準となる可能性
- セキュリティ教育 は「人間が冷静に状況を伝え、AIが技術部分を担う」方向へシフト
関連情報: