CVE-2026-42271

BerriAI LiteLLM

ВЫСОКИЙ РИСК

Вероятность (EPSS) 75.0%
Тяжесть (CVSS) CVSS 8.8
Дата обнаружения

2026-06-08

Профиль угрозы (Вектор)
Доступ
Сеть
Сложность
Низкая
Привилегии
Юзер
Жертва
Бездействует
Строка: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Официальное описание

BerriAI LiteLLM contains a command injection vulnerability that could allow any authenticated user, including holders of low-privilege internal-user keys, to run arbitrary commands on the host.

Технический анализ и план устранения

Суть уязвимости

CVE-2026-42271 представляет собой критическую уязвимость типа Command Injection (инъекция команд) в решении BerriAI LiteLLM. Проблема заключается в недостаточной фильтрации входных данных, передаваемых в системные вызовы или функции исполнения кода. Любой аутентифицированный пользователь, включая владельцев ключей с минимальными привилегиями (internal-user keys), может внедрить вредоносные конструкции в параметры запроса. Это позволяет злоумышленнику выполнять произвольные команды в операционной системе на хосте, где запущен сервис, что ведет к полному захвату инфраструктуры, краже API-ключей сторонних LLM-провайдеров и утечке конфиденциальных данных.

Как исправить

Для полного устранения уязвимости необходимо обновить LiteLLM до версии, в которой исправлена фильтрация аргументов.

  1. Обновите пакет через менеджер пакетов pip:
pip install --upgrade litellm

  1. Если вы используете Docker, обновите образ до последней стабильной версии и перезапустите контейнер:
docker pull ghcr.io/berriai/litellm:main-latest

  1. Перезапустите сервис для применения изменений:
systemctl restart litellm

Временные меры

Если немедленное обновление невозможно, примените следующие защитные механизмы для снижения риска эксплуатации:

  1. Ограничьте права доступа, отозвав неиспользуемые или подозрительные ключи internal-user:
curl -X POST 'http://localhost:4000/key/delete' -H 'Authorization: Bearer <admin_key>' -d '{"keys": ["<key_to_delete>"]}'

  1. Настройте сетевой экран (Firewall), чтобы разрешить доступ к API LiteLLM только с доверенных IP-адресов:
iptables -A INPUT -p tcp --dport 4000 -s <trusted_ip> -j ACCEPT

iptables -A INPUT -p tcp --dport 4000 -j DROP

  1. Запустите процесс LiteLLM от имени пользователя с минимальными системными привилегиями (Non-privileged user) и в изолированном окружении (контейнере) с ограничением доступа к shell:
docker run --rm --user 1000:1000 --cap-drop=ALL ghcr.io/berriai/litellm:main-latest

  1. Внедрите WAF (Web Application Firewall) перед LiteLLM для фильтрации спецсимволов в теле запросов, таких как: ;, &, |, $(), `.
Обсуждение и опыт коллег
0
Чтобы оставить комментарий, необходимо войти или зарегистрироваться.

Пока никто не поделился опытом.
Станьте первым!