何が起きたか
vLLMはStarlette CORSMiddlewareを設定し、allowed_originsをデフォルトでワイルドカードに設定するため、悪意のあるWebページが被害者のブラウザを介してローカルホスト上の認証されていないvLLMサーバーに到達できます。CVSS 3.4(ブラウザ起点攻撃)。
なぜ重要か
これにより、ローカルホストのvLLM開発/プレビューサーバーが被害者主導のエンドポイントになります。悪意のあるページがブラウザを静かに操作してLLMサービングAPIを消費または悪用でき、開発者が後に実際のAPIキーやモデルコンテキストを保持するエンジンをプレビューする場合に重要です。
攻撃経路
サーバーはallowed_originsをデフォルトでワイルドカードに設定するため、悪意のあるページが被害者のブラウザを使用して、認証されていないvLLMインスタンス(例:ローカル/開発サーバー)へのクロスオリジンリクエストを行い、被害者のセッションコンテキストを使用して推論を実行したり、エンドポイントを列挙/悪用したりできます。
影響を受けるシステム
vLLM 0.32.0より前(OpenAI互換サーバー、Starlette CORSMiddlewareデフォルトワイルドカード)。
緩和策
vLLM 0.32.0(コミット fcae5c98 で修正)にアップグレードし、CORS allowed_originsを制限します。または、TLS + 非ワイルドカードの許可オリジンリストを構成します。