Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-jjhc-v7c2-5hh6

Опубликовано: 03 апр. 2026
Источник: github
Github: Прошло ревью
CVSS4: 9.4

Описание

LiteLLM: Authentication bypass via OIDC userinfo cache key collision

Impact

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 user's cached token. On cache hit, the attacker inherits the legitimate user's identity and permissions. This affects deployments with JWT/OIDC authentication enabled.

Patches

Fixed in v1.83.0. The cache key now uses the full hash of the JWT token.

Workarounds

Disable OIDC userinfo caching by setting the cache TTL to 0, or disable JWT authentication entirely.

Пакеты

Наименование

litellm

pip
Затронутые версииВерсия исправления

< 1.83.0

1.83.0

EPSS

Процентиль: 40%
0.0049
Низкий

9.4 Critical

CVSS4

Дефекты

CWE-287

Связанные уязвимости

CVSS3: 9.1
redhat
4 месяца назад

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 user's cached token. On cache hit, the attacker inherits the legitimate user's identity and permissions. This affects deployments with JWT/OIDC authentication enabled. Fixed in v1.83.0.

CVSS3: 9.1
nvd
4 месяца назад

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 user's cached token. On cache hit, the attacker inherits the legitimate user's identity and permissions. This affects deployments with JWT/OIDC authentication enabled. Fixed in v1.83.0.

EPSS

Процентиль: 40%
0.0049
Низкий

9.4 Critical

CVSS4

Дефекты

CWE-287