Уязвимости в Chainlit позволяват кражба на данни чрез произволно четене на файлове и SSRF атаки

0
13
AI Artificial Intelligence

Популярният open‑source AI фреймуърк Chainlit се оказа засегнат от две сериозни уязвимости, които могат да доведат до изтичане на чувствителни данни и до странично придвижване в инфраструктурата на засегнатите организации. Проблемите, обединени под името ChainLeak, са открити от Zafran Security и засягат ключови компоненти в начина, по който Chainlit обработва заявки в своя project element поток.

Какво представлява Chainlit и защо уязвимостите са критични

Chainlit е широко използван фреймуърк за създаване на разговорни чатботове. Само през последната седмица пакетът е изтеглен над 220 000 пъти, а общият брой изтегляния надхвърля 7.3 милиона. Това го превръща в една от най‑популярните основи за AI приложения, което прави всяка уязвимост в него потенциално опасна за голям брой системи.

Според Zafran Security откритите слабости позволяват:

  • кражба на API ключове и конфигурационни данни от облачни среди;
  • достъп до чувствителни файлове на сървъра;
  • SSRF атаки към вътрешни услуги и метаданни на облачни инстанции;
  • възможност за ескалация на привилегии и странично придвижване в мрежата.

Двете уязвимости в детайли

Проблемите се намират в един и същ компонент, но засягат различни механизми:

CVE‑2026‑22218 (CVSS 7.1)
Уязвимост за произволно четене на файлове в update flow на /project/element.
Поради липса на валидиране на определени полета, автентикиран нападател може да прочете съдържанието на всеки файл, до който услугата има достъп, и да го зареди в собствената си сесия.

CVE‑2026‑22219 (CVSS 8.3)
SSRF уязвимост, активна когато Chainlit използва SQLAlchemy като бекенд.
Позволява изпращане на произволни HTTP заявки към вътрешни услуги или облачни метаданни директно от сървъра, като отговорите могат да бъдат съхранени и анализирани от нападателя.

Прочетете още:  Портнаха Quake 1 за Vulkan API

Как могат да бъдат комбинирани уязвимостите

Изследователите подчертават, че двете слабости се подсилват взаимно. След като нападател получи достъп до произволно четене на файлове, защитата на AI приложението започва да се разпада. Пример за това е възможността да се прочете /proc/self/environ, което разкрива:

  • API ключове;
  • пароли и токени;
  • вътрешни пътища и конфигурации;
  • информация, която може да доведе до достъп до сорс кода.

При системи, използващи SQLite чрез SQLAlchemy, може да бъде изтеглен и самият файл на базата данни.

Поправки и реакция на проекта

След отговорно разкриване на 23 ноември 2025 г., Chainlit коригира и двете уязвимости във версия 2.9.4, публикувана на 24 декември 2025 г. Това издание затваря опасните пътища за SSRF и произволно четене на файлове.

Zafran Security отбелязва, че с бързото навлизане на AI фреймуъркове, добре познати класове уязвимости започват да се появяват директно в AI инфраструктурата, често без организациите да осъзнават новите повърхности за атака.

Уязвимост и в Microsoft MarkItDown MCP сървъра

Паралелно с ChainLeak беше разкрита и друга слабост – този път в Microsoft MarkItDown MCP сървъра. Уязвимостта, наречена MCP fURI, позволява произволно извикване на URI ресурси и засяга инстанции, работещи в AWS EC2 с IMDSv1.

Проблемът позволява:

  • достъп до всякакви HTTP или файлови ресурси;
  • SSRF атаки към метаданните на EC2;
  • извличане на AWS креденшъли, ако инстанцията има асоциирана IAM роля;
  • потенциална ескалация на привилегии и изтичане на данни.

Анализ на над 7000 MCP сървъра показва, че повече от 36.7% вероятно са изложени на подобни SSRF рискове.

Препоръчани мерки за защита

За ограничаване на риска се препоръчва:

  • преминаване към IMDSv2;
  • блокиране на частни IP адреси;
  • ограничаване на достъпа до метаданни;
  • използване на allowlist за предотвратяване на изтичане на данни.

Заключение

Уязвимостите в Chainlit и MarkItDown показват колко бързо AI екосистемата наследява класически проблеми в сигурността. С разрастването на AI инфраструктурата, подобни слабости могат да имат сериозни последици, ако не бъдат адресирани своевременно. Версия 2.9.4 на Chainlit и преминаването към по‑сигурни конфигурации в MCP сървърите са ключови стъпки към ограничаване на риска.