概要
BerriAIが開発するオープンソースのLLMゲートウェイ「LiteLLM」に、CVSS 9.3の重大なSQLインジェクション脆弱性(CVE-2026-42208、別名GHSA-r75f-5x8p-qvmc)が発見された。GitHubで数万のスターを持ち、複数のAIモデルを統一APIで管理するミドルウェアとして広く利用されているLiteLLMだが、4月20日に脆弱性アドバイザリが公開され、4月24日にGitHub Advisory Databaseへインデックスされてからわずか36時間後の4月26日04:24 UTC、実際の攻撃が観測された。Sysdigの脅威リサーチチームが確認した攻撃は認証前(プリオース)に実行可能であり、データベース内に保存されたOpenAI・Anthropic・AWS BedrockなどのAPIキーが窃取されるリスクがある。
脆弱性の技術的詳細
本脆弱性はLiteLLMのプロキシAPIキー検証処理における安全でない文字列結合に起因する。Authorization: Bearer ヘッダーの値がパラメータ化されないままPostgreSQLクエリに直接埋め込まれるため、攻撃者は認証なしで任意のSQLを実行できる。具体的には sk-litellm'<UNION SELECT ...>-- のようなペイロードでSQL文字列リテラルを脱出し、litellm_credentials・litellm_config・LiteLLM_VerificationToken などの機密テーブルを標的にすることが可能だ。影響を受けるバージョンは1.81.16から1.83.6であり、4月19日にリリースされたv1.83.7でパラメータ化クエリへの修正が施された。Sysdigのレポートでは「単一のlitellm_credentialsレコードに、月間5桁の支出上限を持つOpenAIキー・管理者権限のAnthropicキー・AWS BedrockのIAM認証情報が含まれることが多い」と指摘されており、一般的なWebアプリのSQLiより被害規模が大きくなりうると警告されている。
攻撃のタイムラインと手法
- 4月20日: LiteLLMリポジトリにアドバイザリ公開
- 4月24日: GitHub Advisory Databaseへのインデックス完了(防御側への可視化)
- 4月26日 04:24 UTC: 最初の悪用を検出(公開後約36時間)
- 4月26日 05:06 UTC: 攻撃者が別IPに切り替え、精度を高めたペイロードで再攻撃
Sysdigの分析によると、攻撃者はPostgreSQLのPascalCase型テーブル命名規則(LiteLLM_VerificationToken)を事前に把握しており、無害なテーブルへのプローブを省略して直接クレデンシャルテーブルを狙う高度な手口を示した。NULLプレースホルダーの数を変えてカラム数を特定するSQL列挙の教科書的手法も用いられている。なお、現時点では窃取済みキーを利用した二次的な不正アクセスは確認されていないが、データベースへの侵害は前提として対応すべきとしている。
推奨される対策
LiteLLMを利用している組織は次の対策を速やかに実施することが求められる。
- 即時アップグレード: v1.83.7以降へ更新する
- APIキーのローテーション: 保存されているすべてのプロバイダーAPIキー・仮想キー・マスターキーを再発行する
- 課金監査: OpenAI・Anthropic等のコンソールで不審な利用がないか確認する
- アクセス制限: プロキシを内部ネットワークや認証済みリバースプロキシ背後に配置する
- 即時アップグレードが困難な場合:
general_settingsにdisable_error_logs: trueを設定してエラーログ経由の情報漏洩を抑制する
今回の事例は、AIツールチェーンのコアコンポーネントが高価値なAPIキーの集積点となっており、脆弱性の公開から攻撃開始までの窓が極めて短いことを改めて示している。LLMゲートウェイを運用する組織はパッチ適用の迅速化とクレデンシャル管理の強化が急務だ。