LiteLLM — это прокси-сервер (AI Gateway) для вызова API-интерфейсов LLM в формате OpenAI (или собственном). До версии 1.83.0, когда аутентификация JWT включена (enable_jwt_auth: true), кэш информации пользователя OIDC использует token[:20] в качестве ключа кэша. Заголовки JWT, созданные с помощью одного и того же алгоритма подписи, генерируют идентичные первые 20 символов.
Этот параметр конфигурации не включен по умолчанию. Большинство экземпляров не затронуто. Злоумышленник, не прошедший проверку подлинности, может создать токен, первые 20 символов которого соответствуют кэшированному токену законного пользователя.
При попадании в кэш злоумышленник наследует личность и разрешения законного пользователя. Это влияет на развертывания с включенной аутентификацией JWT/OIDC. Исправлено в версии 1.83.0.
Показать оригинальное описание (EN)
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.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Litellm Litellm
cpe:2.3:a:litellm:litellm:*:*:*:*:*:*:*:*
|
— |
1.83.0
|