UK — The Register
LiteLLMのサプライチェーン攻撃は露出したマスターキーから始まった
セキュリティ2分で読めます
AI向けのオープンソース部品「LiteLLM」が、悪意あるプログラムを混入させたサプライチェーン攻撃を受けました。攻撃の始まりは、約半年前に公開リポジトリへ誤って載せられた「マスターキー」でした。
何が起きたのか
攻撃者は、LiteLLMの悪意ある版(1.107.0)をPyPIとコンテナ置き場に公開しました。この版には、情報を盗むプログラムと、遠くから機器を操れるプログラムが入っていました。LiteLLMによると、この攻撃の入口は5月に公開GitHubへ誤って載った設定ファイル内のマスターキーでした。攻撃者はこの鍵で社内システムに入り、GitHubの高い権限を手に入れました。
数字で見る被害
- 悪意ある版がPyPIにあったのは2時間足らず。その間に約4万9000回ダウンロードされました(Wiz社の調べ)。
- 鍵が公開されたのは5月27日。攻撃者が鍵を使ったのは10月10日でした。
- 盗まれる対象には、ブラウザの保存情報、AWSやGoogle Cloudの鍵、Azureのトークン、OpenAIやAnthropicなどのAPIキーが含まれていました。
なぜ鍵が危険なのか
マスターキーは、多くのシステムの扉を開ける合鍵のようなものです。鍵を消しても、無効化(失効)しなければ、まだ使えてしまいます。今回の開発チームは、誤公開に気づいて投稿を消しましたが、鍵の取り替えを忘れていました。
なぜ大事なのか
今回の件は、漏れた鍵を放置することの危険を示す強い例です。攻撃者は、正しい開発者のふりをして、気づかれずに変更を入れられました。AIを使うソフトを作る人にとって、鍵の管理は特に重要です。もしこの版を入れて動かした人は、そのパソコンでアクセスできた情報がすべて盗まれたと考え、パスワードや鍵を変える必要があります。
今後注目すべき点
- LiteLLMが、盗まれたすべてのトークンや鍵を無効化し終えるかどうか。
- 攻撃で影響を受けた利用者や取引先が、どこまで被害を確認できるか。
- PyPIやGitHubが、鍵の管理や二段階認証の仕組みをどう強化するか。
用語解説
- LiteLLM
- 複数のAIモデルを、同じ方法で呼び出せるようにするオープンソースの道具です。
- PyPI
- Pythonのプログラム部品を配って使うための公開置き場です。
- マスターキー
- 多くのシステムに入るための、強い権限を持つ鍵のことです。
- GitHub
- ソフトウェアの開発データを保存し、みんなで共有する場所です。
- トークン
- ログインの代わりに、本人だと示すための短い暗号の札のことです。
- サプライチェーン攻撃
- 部品や配布の流れに悪意を入れて、そこを使って多くの人を狙う攻撃のことです。