Уязвимость BadHost во фреймворке Starlette представляет угрозу для ИИ-агентов - «Новости»

  • 14:30, 27-мая-2026
  • Новости / Вёрстка / Добавления стилей / Изображения / Преимущества стилей / Видео уроки / Самоучитель CSS
  • Калерия
  • 0

Исследователи предупреждают о критической уязвимости CVE-2026-48710, которая была обнаружена в опенсорсном фреймворке Starlette и получила название BadHost. Поскольку Starlette лежит в основе FastAPI и множества популярных ИИ-инструментов, проблема создает риски для миллионов серверов и ИИ-агентов, а эксплуатация бага сводится к одному символу в HTTP-заголовке Host.


Starlette представляет собой реализацию ASGI (Asynchronous Server Gateway Interface), используемую для обработки большого числа одновременных запросов. Согласно данным разработчиков проекта, пакет скачивают около 325 млн раз в неделю.


Проблему обнаружили специалисты X41 D-Sec, а исследователи Secwest дали ей имя BadHost. Хотя уязвимость набрала только 7 баллов по шкале CVSS, специалисты считают эту оценку заниженной и называют проблему критической.


Помимо FastAPI, уязвимость затрагивает vLLM, LiteLLM, MCP-серверы, OpenAI-совместимые прокси, различные среды выполнения ИИ-агентов, панели оценки моделей и другие инструменты ИИ-экосистемы.


Уязвимость связана с тем, как Starlette до версии 1.0.1 собирает объект request.url. Фреймворк берет значение из HTTP-заголовка Host, добавляет к нему путь из запроса и не проверяет, что сам Host валиден. Из-за этого атакующий может передать в Host не только домен, но и фрагмент пути.


Например, запрос может идти на защищенный эндпоинт /protected, но из-за заголовка вида Host: example.com/health?x= Starlette соберет URL таким образом, что request.url.path будет выглядеть как /health. При этом роутинг все равно сработает по настоящему HTTP-пути — /protected.


Если приложение или промежуточное ПО принимает решения об авторизации на основе request.url.path, а не посредством scope["path"], проверка может «увидеть» якобы безопасный путь и пропустить запрос дальше. В результате атакующий сможет обойти механизм авторизации, который опирается на путь запроса.


По словам исследователей, уязвимость позволяет обходить аутентификацию, проводить SSRF-атаки, а в некоторых случаях даже может привести к удаленному выполнению кода.


Особенно опасной специалисты считают ситуацию с MCP-серверами (Model Context Protocol), которые дают ИИ-агентам доступ к внешним системам: почте, календарям, корпоративным сервисам, облачным хранилищам и внутренним базам данных. Такие серверы обычно хранят API-ключи, токены и учетные данные для сторонних сервисов, что делает их крайне привлекательной целью для злоумышленников.


Исследователь X41 D-Sec Маркус Вервир (Markus Vervier) сообщил СМИ, что во время сканирования уязвимых систем уже удалось обнаружить доступ к самым разным данным и инфраструктурам. Среди них:



  • клинические базы данных и M&A-документы биофармацевтических компаний;

  • системы верификации личности с PII и кодовыми базами;

  • IoT- и промышленные системы с SSH-доступом;

  • почтовые сервисы и SaaS-платформы;

  • HR-системы с персональными данными кандидатов;

  • облачные мониторинговые платформы с данными AWS;

  • системы документооборота;

  • ИБ-инфраструктура с доступом к сканерам Nuclei и реестрам активов.


Уязвимыми считаются все версии Starlette до 1.0.1, в которой разработчики добавили проверку некорректных Host-заголовков.


X41 D-Sec совместно со специалистами компании Nemesis уже запустили онлайн-сканер для проверки серверов на уязвимость перед проблемой BadHost. Исследователи рекомендуют срочно обновить Starlette, а владельцам FastAPI-, LiteLLM- и vLLM-инфраструктуры — проверить свои системы на наличие уязвимых компонентов.


Исследователи предупреждают о критической уязвимости CVE-2026-48710, которая была обнаружена в опенсорсном фреймворке Starlette и получила название BadHost. Поскольку Starlette лежит в основе FastAPI и множества популярных ИИ-инструментов, проблема создает риски для миллионов серверов и ИИ-агентов, а эксплуатация бага сводится к одному символу в HTTP-заголовке Host. Starlette представляет собой реализацию ASGI (Asynchronous Server Gateway Interface), используемую для обработки большого числа одновременных запросов. Согласно данным разработчиков проекта, пакет скачивают около 325 млн раз в неделю. Проблему обнаружили специалисты X41 D-Sec, а исследователи Secwest дали ей имя BadHost. Хотя уязвимость набрала только 7 баллов по шкале CVSS, специалисты считают эту оценку заниженной и называют проблему критической. Помимо FastAPI, уязвимость затрагивает vLLM, LiteLLM, MCP-серверы, OpenAI-совместимые прокси, различные среды выполнения ИИ-агентов, панели оценки моделей и другие инструменты ИИ-экосистемы. Уязвимость связана с тем, как Starlette до версии 1.0.1 собирает объект request.url. Фреймворк берет значение из HTTP-заголовка Host, добавляет к нему путь из запроса и не проверяет, что сам Host валиден. Из-за этого атакующий может передать в Host не только домен, но и фрагмент пути. Например, запрос может идти на защищенный эндпоинт /protected, но из-за заголовка вида Host: example.com/health?x= Starlette соберет URL таким образом, что request.url.path будет выглядеть как /health. При этом роутинг все равно сработает по настоящему HTTP-пути — /protected. Если приложение или промежуточное ПО принимает решения об авторизации на основе request.url.path, а не посредством scope_
Цитирование статьи, картинки - фото скриншот - Rambler News Service.
Иллюстрация к статье - Яндекс. Картинки.
Есть вопросы. Напишите нам.
Общие правила  поведения на сайте.

Другие новости


Рекомендуем

Комментарии (0)




Уважаемый посетитель нашего сайта!
Комментарии к данной записи отсутсвуют. Вы можете стать первым!