Сървърите на Flowise, използвани за изграждане на агенти с изкуствен интелект (ИИ) и автоматизирани работни процеси, са засегнати от шест новоразкрити уязвимости за отдалечено изпълнение на код (RCE).
Слабостите биха могли да позволят на оторизирани атакуващи да изпълняват команди на базовия сървър, излагайки на риск данни, идентификационни данни и свързани системи.
Пътищата на атака включват няколко компонента на Flowise, включително обработка на CSV файлове, потребителски JavaScript функции, конфигурации на MCP, бази данни и функции за управление на записи.
Констатациите допълват опасенията, повдигнати от предишни злоупотреби с инжектиране във Flowise, където изложените сървъри за ИИ работни процеси се превърнаха в атрактивни цели за атакуващи.
Изследователи от Elttam са идентифицирали проблемите при преглед на версии 3.1.1 и 3.1.2 на Flowise. От Elttam споделиха в доклад за Cyber Security News (CSN), че няколко от предходните корекции са били непълни, което е позволило на изследователите да намерят нови начини за заобикаляне на по-ранните контроли за сигурност.
Общото въздействие може да бъде сериозно, тъй като Flowise често свързва езикови модели с бизнес инструменти, файлове, бази данни и външни услуги. Успешното компрометиране би могло да осигури на атакуващия начална точка в хоста на работния процес и достъп до ресурсите, налични за този сървър.
Първият проблем засяга функцията „CSVAgent“, която позволява на потребителите да предоставят собствен pandas код за обработка на качени CSV файлове. Въпреки че Flowise използва черен списък за блокиране на рискови Python функции, изследователите са открили начини да злоупотребят с функционалността на pandas и да изпълняват команди извън предвидената задача за обработка на данни. Първоначална корекция за сигурност се опитваше да блокира опасната десериализация и изискваше входните данни да започват с read_csv. Elttam обаче установи, че специално създаден израз все още може да отговори на тези ограничения, като същевременно осъществи достъп до функционалности на операционната система чрез pandas. По-късно разработчиците премахнаха засегнатите файлове „CSVAgent“ и „AirtableAgent“, след като идентифицираха опасения, свързани с нормализацията.
Втора уязвимост включва използването на JavaScript изолираната среда „vm2“ във Flowise. Изолираната среда позволява определени външни модули по подразбиране, включително moment, и изследователите са използвали този достъп, за да избягат от ограничената среда и да изпълнят код на хоста.
Докладът също така описва проблем с инжектиране на променливи на средата в потребителски MCP конфигурации. Атакуващите биха могли да злоупотребят с настройките, предавани на стартиран процес, включително променливи, свързани с Python, за да задействат изпълнение на код. Въпреки че Flowise въведе проверки за опасни стойности, изследователите заявиха, че са открили заобикаляне, което е останало некоригирано към момента на публикуване на доклада.
Други три проблема бяха открити в опциите на TypeORM DataSource, възела SQL Database Chain и възела SQLite Record Manager. Всеки от тях може да се използва за записване или зареждане на контролирано от атакуващия съдържание по небезопасен начин, което потенциално може да доведе до изпълнение на код, когато се комбинира с други функции на Flowise.
Констатациите показват защо инфраструктурата за ИИ работни процеси се нуждае от същото защитно внимание, както всяко приложение с достъп до интернет. Администраторите трябва своевременно да обновяват Flowise, да преглеждат всички внедрени възли и да премахват или деактивират компоненти, които не са необходими. Те също така трябва да избягват директното излагане на административни интерфейси и API в интернет.
Организациите трябва да третират настройките на MCP сървъра като недоверени входни данни и да ограничат разрешенията, налични за процесите на ИИ работните процеси. Стартирането на Flowise с акаунт без root права, изолирането му в ограничена среда и строгият контрол на достъпа до файловата система могат да намалят щетите, ако бъде експлоатирана уязвимост.