生成AI向けOSS「LiteLLM」の配布版に不正プログラム混入 1.107.0が対象
複数のAIモデルのAPIをまとめて扱えるオープンソースソフトウェア「LiteLLM」の正規の配布版(1.107.0)に、不正なプログラムが混入していたと開発元が10月21日に公表しました。
LiteLLMの開発元の公表(10月21日)と、Security NEXTの記事をもとにまとめます。
公表された内容の概要
- LiteLLMとは:複数の大規模言語モデル(LLM)のAPIを、共通の書き方で呼び出せるようにするオープンソースソフトウェア
- 何が起きたか:リリースの仕組み(パイプライン)が攻撃者に乗っ取られ、不正なプログラムを含む版「1.107.0」が配布された
- 対象:PyPIで配布された「litellm==1.107.0」(7種類すべて)。あわせてDocker Hub・GitHub Container Registryの公式イメージ(
v1.107.0・latest・main-latest・main-stableのタグ)も対象 - 配布されていた時間(10月21日・協定世界時):PyPIは11時39分〜13時23分ごろ、コンテナイメージは11時46分〜14時20分ごろ
- 不正プログラムの機能:クラウドサービスの認証情報、SSHの秘密鍵、ブラウザに保存された認証情報、開発環境のトークンなどを盗み取る機能や、外部から取得したコードを実行する機能があったとされる。Security NEXTによると、LiteLLMを読み込まなくてもPythonの起動時に自動で動く仕組みになっていた
- 原因として説明されていること:ログから取得されたGitHubの認証トークンが使われ、ブランチの保護が外されたうえで、名前の似た攻撃者側のリポジトリを指すようにリリースの手順が書き換えられた
- 開発元が示した対応:1.106.2以前の版に固定する、不正なファイル(
cook.pth・sitecustomize.py)を削除する、すべての認証情報を作り直す、クラウドのログで不正なアクセスがないか確認する。1.107.0より前の版は影響を受けないとしている - 発見:Security NEXTによると、セキュリティ企業のJFrogが見つけて報告した
クリエイターに関係する点
AIを組み込んだツールやサービスを自分で作っている場合、利用しているライブラリの版を確認する対象になります。開発元は、該当の版を入れた環境は乗っ取られたものとして扱うよう呼びかけています。