LiteLLM is a proxy server (AI Gateway) to call LLM APIs in OpenAI (or native) format. Prior to 1.83.0, when JWT authentication is enabled (enable_jwt_auth: true), the OIDC userinfo cache uses token[:20] as the cache key. JWT headers produced by the same signing algorithm generate identical first 20 characters. This configuration option is not enabled by default. Most instances are not affected. An unauthenticated attacker can craft a token whose first 20 characters match a legitimate users cached token. On cache hit, the attacker inherits the legitimate users identity and permissions. This affects deployments with JWT/OIDC authentication enabled. Fixed in v1.83.0.
When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Litellm | Litellm | * | 1.83.0 (excluding) |
| Red Hat Ansible Automation Platform 2.6 | RedHat | ansible-automation-platform-26/lightspeed-chatbot-rhel9:1777398576 | * |
| Red Hat OpenShift AI 2.25 | RedHat | rhoai/odh-llama-stack-core-rhel9:1781826406 | * |
| Red Hat OpenShift AI 3.3 | RedHat | rhoai/odh-llama-stack-core-rhel9:1782310008 | * |