LiteLLM、新たなサプライチェーン攻撃で侵害

LiteLLMが新たなサプライチェーン攻撃を受け、PyPIとDockerの両方で、ユーザーに悪意あるパッケージが配布されました。

この事件が起きたのは10月21日です。影響を受けたのは、複数のLLMプロバイダーへのリクエストを振り分ける人気のオープンソースプロキシ、LiteLLMのバージョン1.107.0です。

悪意あるパッケージは約3時間にわたって公開されており、推計で4万9000回以上ダウンロードされたとみられます。パッケージはPyPIから削除されました。Docker Hubのタグとイメージのバリアントも、削除されたか、問題のないアーティファクトを指すように変更されています。

[関連記事: Trivy, Not LiteLLM Behind the 2,500 Org Compromise ]

LiteLLMの調査によると、攻撃者は、公開インターネットに露出していた社内のLiteLLM環境にあった「見慣れない、目立たない名前のユーザーアカウント」のGitHub CLI用OAuthトークンを入手しました。

トークンの漏えい元は、Claude Codeだった可能性が高いとされています。Claude Codeは特定の状況下でトークンをレスポンス本文に埋め込むことがあり、それがLiteLLMのログに記録された可能性があります。攻撃者は、このログからトークンを取得したとみられます。

ただしLiteLLMによると、攻撃者がどのように社内環境へ侵入し、内部で横展開したのかは、いまだ不明です。攻撃者は、開発者3人分のGitHub CLI認証情報を手にしていました。

攻撃者は、侵害した認証情報を悪用してブランチ保護を無効化しました。さらに、リリース処理の参照先を別のリポジトリに向ける変更をマージし、よく似た名前のリポジトリを指す侵害済みのGitHubワークフローを実行しました。そのうえで、細工したアーティファクトに署名して公開しています。

侵害期間中に悪意あるLiteLLMバージョン1.107.0のパッケージをダウンロードしたユーザーは、情報窃取型マルウェアとRAT(遠隔操作型マルウェア)の機能を持つマルウェアに感染しました。LiteLLMによると、同社のプライベートリポジトリから取得していたエンタープライズ顧客に影響はありませんでした。

ペイロードはAIの支援で作られた可能性が高く、正規のBerriAI/litellmリポジトリになりすましたBerri-AI/litellmから配布されました。このペイロードは、site-packagesのルートに3つのファイルを展開し、Pythonインタプリタが実行されるたびに動作します。

最初にインタプリタが読み込むのが情報窃取マルウェアです。システム情報、ブラウザーの認証情報とCookie、開発者の認証情報、環境変数、クラウドのシークレット(AWS、GCP、Azure)を収集します。AIツールのAPIキー(Anthropic、GitHub Copilot、OpenAIなど)、SSH秘密鍵、シェルの履歴ファイル、GPG鍵も標的です。

盗まれたデータは暗号化され、litellm[.]devに送信されます。

サイバーセキュリティ企業のWizは、攻撃者が窃取後およそ4.5時間で、盗んだ認証情報の悪用を始めたと指摘しています。

Wizは、攻撃者が盗んだAWS認証情報でAmazon Bedrockのモデルに問い合わせる様子も確認しました。LLMjackingが目的とみられます。

マルウェアのRAT機能は、攻撃者のコマンド&コントロール(C&C)サーバーと定期的に通信していました。StepSecurityは報告の中で、このRATが「1時間ごとにGitHubのデッドドロップを確認し、攻撃者が置いたPythonコードをそのまま実行する」と述べています。

LiteLLMバージョン1.107.0をインストールしたユーザーは、ただちに削除し、認証情報をローテーションして、システム内にマルウェアが残っていないか調べる必要があります。問題のない最新のLiteLLMバージョンは1.106.2です。

翻訳元: https://www.securityweek.com/litellm-compromised-in-fresh-supply-chain-attack/

本記事は securityweek.com の記事を翻訳・要約したものです。