Миллионы AI-агентов под угрозой: критическая уязвимость в аппаратном обеспечении с открытым исходным кодом

Starlette уязвимость ии Fastapi Cve безопасность arstechnica.com

В Starlette, пакете с 325 млн еженедельных загрузок, обнаружена уязвимость “BadHost”, позволяющая хакерам взламывать серверы ИИ и красть конфиденциальные данные. — arstechnica.com

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

Уязвимость присутствует в Starlette — фреймворке с открытым исходным кодом, который, по словам его разработчика, загружается 325 миллионов раз в неделю. Тысячи других проектов с открытым исходным кодом также уязвимы, поскольку для их работы требуется Starlette. Этот фреймворк является реализацией ASGI (asynchronous server gateway interface), которая позволяет эффективно обрабатывать большое количество запросов одновременно. Starlette лежит в основе FastAPI и других широко используемых фреймворков для создания сервисов в Python-приложениях, а также многих других.

Легко эксплуатировать, миллионы серверов под ударом

ASGI, а следовательно и Starlette, имеют доступ к серверам, работающим по MCP (model context protocol), который позволяет агентам ИИ от крупных провайдеров получать доступ к внешним источникам, включая базы данных пользователей, аккаунты электронной почты и календари, а также всевозможные другие ресурсы. Для подключения к этим внешним системам серверы MCP хранят учетные данные для каждой из них, что делает их особенно ценными хранилищами для взлома злоумышленниками.

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

«Один символ, внедренный в заголовок HTTP Host, обходит авторизацию на основе путей в Starlette, ядре маршрутизации FastAPI», — написали исследователи из Secwest. «Через FastAPI этот примитив (теперь отслеживаемый как CVE-2026-48710 и названный обнаружившими его BadHost) достигает большого сегмента экосистемы инструментов ИИ на Python: vLLM (где был обнаружен баг), LiteLLM, Text Generation Inference, большинство прокси-заглушек OpenAI, серверы MCP, каркасы агентов, панели оценки (eval dashboards) и пользовательские интерфейсы управления моделями».

BadHost имеет рейтинг серьезности 7 из 10. Secwest заявила, что такая классификация «существенно недооценивает» угрозу, которую она представляет для пользователей других приложений, зависящих от Starlette. X41 D-Sec, фирма по безопасности, обнаружившая уязвимость, охарактеризовала ее как «критическую по серьезности». X41 D-Sec объединила усилия с фирмой безопасности Nemesis для создания онлайн-сканера, который может проверить, уязвим ли данный сервер.

,

Исследователь X41 D-Sec Маркус Вервье сообщил, что сканирование выявило следующие типы данных, которые в настоящее время подвергаются риску:

  1. Биофармацевтический ИИ – базы данных клинических испытаний, данные о слияниях и поглощениях (M&A), SSRF
  2. Проверка личности – анализ лиц, KYB, личные данные в реальном времени, внутренний исходный код
  3. IoT/Промышленность – SSH к устройствам через бастион, удаленное выполнение кода
  4. Электронная почта/SaaS – полное чтение/отправка/удаление почтовых ящиков, экспорт S3, веб-хуки
  5. HR/Рекрутинг – личные данные кандидатов, данные конвейера найма
  6. CMS/Маркетинг – списки подписчиков, отправка/планирование массовых email-кампаний
  7. Управление документами – чтение, загрузка, изменение отсканированных документов
  8. Облачный мониторинг – топология AWS, распределенные трассировки, запросы метрик
  9. Кибербезопасность – инвентаризация активов, доступ к сканеру Nuclei в реальном времени
  10. Личное здоровье/Финансы – журналы питания, расходы, подписки

Суть уязвимости заключается в том, что Starlette принимает недопустимые значения заголовка хоста, что заставляет приложения, использующие объект request.url Starlette для аутентификации, одобрять несанкционированные запросы на доступ. X41 D-Sec обнаружила, что аутентификация может быть обойдена во многих приложениях, которые полагаются на этот вызов. Кроме того, взломы могут привести к эксплойтам SSRF (server-side request forgery) и, в некоторых случаях, к удаленному выполнению кода. X41 D-Sec описала это так:

Starlette реконструирует запрошенный URL на основе заголовка запроса HTTP Host и запрошенного пути, но не выполняет никакой проверки значения заголовка Host. Это позволяет злоумышленникам внедрять пути в часть хоста, предваряя фактический путь. Однако маршрутизация в Starlette основана на фактическом пути запроса. Такая непоследовательная интерпретация HTTP-запросов может привести к таким проблемам, как обход аутентификации, когда аутентификация зависит от пути реконструированного URL. Starlette является основой для Python-фреймворка FastAPI.

Исследователи компании добавили: «Алгоритм маршрутизации Starlette зависит от пути HTTP, но атрибут request.url.path, который предоставляется промежуточному ПО (middlewares) и конечным точкам, основан на реконструированном URL. Для пользователей неожиданно, что request.url.path отличается от фактического пути, запрошенного по HTTP».

Разработчик Starlette не ответил немедленно на электронное письмо с просьбой подтвердить оценку и предоставить дополнительную информацию.

Поскольку уязвимые версии Starlette все еще широко используются в производственных системах, тем, кто полагается на любое приложение, зависящее от Starlette — особенно FastLLM, vLLM и LiteLLM — следует, как минимум, запустить сканер на своих системах, чтобы обнаружить, используется ли все еще уязвимый код Starlette. Дополнительные рекомендации по смягчению последствий приведены по ссылкам Nemesis и X41 D-Sec выше.

Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.

Похожие новости: