何が起きたか
vLLM 0.3.0から0.22.0では、AuthenticationMiddlewareはStarletteのURL(scope=scope).pathを使用してリクエストパスを再構築し、これは攻撃者が制御するHostヘッダーを組み込みます。「localhost/v1/models?」などの細工されたHostヘッダーを挿入することで、パスが/v1で始まるかどうかを検証した認証チェックがバイパスされ、保護されたAPIエンドポイントへの未認証アクセスが許可されます。0.22.0ではscope['path']を直接使用することで修正されました。CVSS 9.1 CriticalはMiggo Securityの深い分析によって確認されました。
なぜ重要か
vLLMは本番環境で最も広く展開されているLLM推論エンジンの1つです。認証バイパスにより、ネットワークに到達可能な任意の攻撃者がAPIキーなしでcompletion、モデルリスト、GPU リソース消費、機密推論データ流出を実行でき、ホスト型LLM展開を保護する主要なアクセス制御メカニズムを直接破壊します。
攻撃経路
細工されたHostヘッダー(例えばHost: localhost/v1/models?)を含むHTTPリクエストを任意のvLLM OpenAI互換APIエンドポイントに送信。AuthenticationMiddlewareのパスプリフィックスチェックをバイパスします
影響を受けるシステム
vLLM >= 0.3.0, < 0.22.0
緩和策
vLLM 0.22.0以降にアップグレードしてください。Advisory: https://github.com/vllm-project/vllm/pull/43426