OWN NEWS GATHER
← 戻る
The Hacker News

LiteLLMのマスターキー流出から悪意あるパッケージ配信へ、パイプライン乗っ取りの全容が判明

要点

  • LLMゲートウェイ「LiteLLM」の開発チームが、悪意あるパッケージ配信に至る攻撃経路の調査結果を公表した。

  • 2026年5月に誤公開された管理キーの失効漏れが原因で、GitHub組織の所有者権限が攻撃者に窃取された。

  • 攻撃者は開発者の認証情報を奪い、一時的に緩和されていた承認ルールを悪用して正規パイプラインを改ざんした。

  • 不正なコードを含むバージョン「1.107.0」が一時配信されたが、外部研究者の通報により隔離・差し戻しが行われた。

  • オープンソースの大規模言語モデル(LLM)向け統合ゲートウェイツールを開発するLiteLLMは、パッケージ配信パイプラインが悪意ある攻撃者に乗っ取られ、不正なバージョンが配布されたインシデントの詳細を公表した。LiteLLMの開発チームが公表した調査報告によると、2026年5月に公開GitHubリポジトリへ誤コミットされたマスターキーが失効されずに放置されていたことが原因だという。攻撃者はこの未失効キーから組織所有者権限を奪い、リリース設定を改ざんして不正な「LiteLLM 1.107.0」をPyPIやDocker Hubへ一時的に配信させていた。

5月の誤コミットと失効漏れが発端に

LiteLLMのオリバー・ジェンセン(Oliver Jensen)氏とマテオ・ワン(Mateo Wang)氏によると、発端は2026年5月27日だった。公開リポジトリ「LiteLLM-Labs/lite-harness」の設定ファイルに、エージェント運用ツール「LiteLLM Agent Platform」のマスターキーが誤って含まれた状態でコミットされた。
開発チームは誤りに即座に気づき、強制プッシュ(force-push)で履歴を上書きしてキーを失効対象に特定した。しかし実際には、マスターキーの失効手続きが行われないまま有効な状態で放置されていたという。

スコープ無制限のトークンから組織全体の権限を掌握

この未失効キーを使い、攻撃者が2026年10月10日にAgent Platformへ侵入した。攻撃者は、クラウドエージェントがプルリクエストを作成するために設定されていた「GitHub CLI OAuthトークン」を抽出した。OAuthトークンとは、外部サービスに特定操作の権限を委譲するための認証データである。
このトークンは権限範囲の絞り込み(スコープ制限)が行われておらず、GitHub組織の所有者アカウントに紐づいていた。その結果、攻撃者は組織下の全リポジトリに対する完全な所有者権限を手に入れた。

一時ブランチを用いた巧妙なトークン窃取と痕跡隠滅

組織権限を得た攻撃者は、メンテナー権限を持つエンジニアの認証情報の奪取を試みた。10月10日22時11分から12分(UTC)にかけ、内部リポジトリに使い捨てのブランチを作成し、悪意あるワークフローを実行した。
セキュリティ企業Socketの調査によると、短命なブランチ上に「.github/workflows/cache.yml」を追加し、エンジニア2名分のトークンを外部エンドポイントへ送信させていた。攻撃者はトークン取得直後にログやブランチを削除し、リポジトリ履歴に痕跡が残らないよう隠蔽していた。

緩和された承認ルールをすり抜け、不正パッケージを配信

その後、攻撃者は10月21日にリリースパイプラインを改ざんした。コードの取得先を正規の「BerriAI/litellm」から、名称が酷似した攻撃者管理のリポジトリ「Berri-AI/litellm」へと差し替えた。
通常の運用では、リリースの公開には認可エンジニアによる起動と、社内の物理デバイスに固定された専用アカウントの承認が必要だった。しかし当時、頻繁なリリース作業に対応するため一時的に制限が緩和され、任意のエンジニア2名による起動と承認が可能になっていた。攻撃者は事前に入手した2名分のトークンを使い、一方のアカウントで起動し、もう一方で承認した。
この結果、10月21日11時39分(UTC)に悪意ある「LiteLLM 1.107.0」がPyPIへ公開され、直後にDocker Hub等へもイメージが配信された。

外部研究者の通報による検知と全トークンの失効対応

公開から約20分後の10月21日12時6分(UTC)、セキュリティ企業Upwindの研究者リドール・マクラフ(Lidor Machluf)氏がサプライチェーン攻撃を報告した。サプライチェーン攻撃とは、ソフトウェアの開発・配信経路を標的として不正コードを混入させる攻撃手法である。
報告を受けたPyPIは13時23分(UTC)に当該バージョンを隔離した。また14時20分(UTC)にはDocker Hub上の該当タグが削除または安全なイメージへ差し替えられた。
開発チームによると、攻撃者のワークフローは推論APIトークンを中心とした認証情報の探索を意図していたという。LiteLLMは社内や外部ベンダーに関連するすべてのトークンを失効させる対応を進めていると説明している。

元URL