Summary
LiteLLM Proxy has server-side request forgery via the `user_config` request parameter
Advisory details
Summary
A server-side request forgery in LiteLLM Proxy lets an authenticated caller redirect the
proxy's outbound request to a host of their choosing by smuggling an api_base inside the
user_config request body, bypassing the existing parameter guard.
Details
LiteLLM Proxy validates request bodies with is_request_body_safe, which blocks the
api_base and base_url parameters but does not cover user_config. The user_config
object is used to build the outbound router for a request, so a caller can place an
api_base inside it and reach an arbitrary host. The guard only inspected the two
top-level keys, so the same api_base nested inside user_config was never checked.
Exploitation requires a valid virtual key.
Impact
An authenticated caller can make the proxy issue server-side requests to internal or external hosts of their choosing, reaching endpoints the caller cannot otherwise access.
Affected / Patched
Affected: <= 1.83.8
Patched: 1.83.9
Remediation
Upgrade to 1.83.9 or later (released 2026-04-17).
References
Related vulnerabilities
All Supply chain →- CRITICALCVE-2026-77524
KEDA: Privilege escalation from namespace admin to cluster admin via KEDA TriggerAuthentication
- MEDIUMGHSA-p3pr-8f3m-4qp8
pyLoad WindowsPhoneNotify addon: non-admin SETTINGS user triggers SSRF via unguarded http.client notification host
- MEDIUMCVE-2026-107394
Indico: Incomplete Server-Side Request Forgery (SSRF) check
- HIGHCVE-2026-60091
PraisonAI: Jobs API is unauthenticated by default and allows attacker-controlled webhook SSRF
- MEDIUMCVE-2026-107289
Pydantic AI: SSRF cloud-metadata blocklist bypass via IPv6 zone identifiers
- HIGHCVE-2026-61430
PraisonAI: DNS rebinding bypass in `web_crawl` SSRF protection allows internal response disclosure