Уязвимости в сигурността в инфраструктурата за агенти на Amazon Web Services (AWS), Google и Vercel позволяват на ненадеждни или подправени инструкции да достигнат до инструментите на агента, без да се проверява дали ходът на модела ги е оторизирал.

При няколко от начините за атака моделът изобщо не се стартира, така че системните подкани (system prompts), филтрите за съдържание и предпазните мерки на ниво модел нямат възможност да се намесят.

Засегнатите продукти включват API-то InvokeHarness на Bedrock AgentCore на Amazon, комплекта за разработка на агенти (ADK) за Python на Google и пакетите за свързване на Vercel AI SDK за кодиращите агенти Codex и OpenCode. AWS коригира управляваната услуга, Google отстрани проблемите в ADK 2.5.0, а Vercel инсталира корекции за сигурност в @ai-sdk/harness-codex във версия 1.0.29 и в @ai-sdk/harness-opencode във версия 1.0.28.

Това не са идентични уязвимости и не споделят едни и същи условия за атака. При AWS става въпрос за удостоверена отдалечена заявка, пътищата при Google изискват контролирани от атакуващия сесийни събития или дефинирани от потребителя извиквания на функции, а пропуските при Vercel изискват ненадежден код, който вече се изпълнява в изолирана Linux среда.

Излагането на риск е ограничено от това какво конкретният агент вече може да прави, така че агент, който не е свързан с чувствителни инструменти, не носи нищо на атакуващия.

Липсващото доказателство зад извикването на инструмент

Хеди Ингбер и Авиям Ивги, съоснователи на Stealth, представиха днес кросплатформения модел, който наричат CoreBreak, на Black Hat USA 2026. И двамата отговориха на въпроси на The Hacker News по имейл.

При нормален поток на агента, комплектът за разработка на софтуер (SDK) изпраща заявката на потребителя, системната подкана, историята на разговора и наличните дефиниции на инструменти към модела. Моделът решава дали да извика инструмент и връща структурирана инструкция, съдържаща името на инструмента и аргументите. След това SDK я изпълнява.

Уязвимите пътища не са проверявали произхода между тези последни две стъпки. Средата за изпълнение е получавала данни с формата на извикване на инструмент, генерирано от модел, и ги е третирала като авторитетни.

Атакуващият не е трябвало да убеждава модела да наруши правилата си; атакуващият е можел да достигне до пътя за изпращане или оторизация без легитимен ход на модела.

AWS коригира AgentCore, Strands запазва пътя за възобновяване

Бюлетинът за сигурност на AWS присвоява CVE-2026-18830 с CVSS v4.0 оценка 8.6 на недостатъчна валидация на входните данни в Amazon Bedrock AgentCore harness.

Удостоверен отдалечен потребител може да постави блок със съдържание за използване на инструмент в последното съобщение на заявка към InvokeHarness. След това цикълът на събитията (event loop) може да изпрати посочения инструмент директно, без да пита модела.

AWS споделя, че проблемът е засягал управляваното API InvokeHarness преди 31 юли 2026 г. Добавена е валидация от страна на сървъра, която отхвърля предоставените от подателя блокове за използване на инструменти, преди те да достигнат до цикъла на събитията. Мярката за смекчаване е приложена автоматично и не изисква действие от страна на клиентите.

Корекцията на управляваната услуга не покрива подобен път за заобикаляне на модела в Python кода с отворен код на Strands, върху който изследователите твърдят, че е изграден harness-ът на AgentCore. Текущият оригинален event_loop.py извиква помощна функция, наречена _has_tool_use_in_latest_message, и когато тази проверка премине, цикълът на събитията задава причината за спиране като tool_use, взема последното съобщение директно и прескача изпълнението на модела.

Коментар над това разклонение гласи: „Прескачане на извикването на модела, ако последното съобщение съдържа ToolUse.“ The Hacker News потвърди, че разклонението все още присъства в главния клон (main branch) на хранилището към 5 август 2026 г.

Непосредствено над проверката се намира по-тясно разклонение, което възстановява съобщение за използване на инструмент, което агентът е съхранил преди прекъсване, вместо да взема каквото и да е от последното съобщение.

Заявка за изтегляне (pull request) от април предупреждава, че външно инжектиран зловреден код под формата на toolUse блокове може да достигне до изпълнение на инструмент без извикване на модела. Предложената промяна щеше да премахне прекия път, но беше затворена без сливане на 19 юни.

Наличието на прекия път не прави всяко Strands приложение отдалечено експлоатируемо. Излагането на риск зависи от това дали дадено приложение позволява на ненадеждни потребители да изпращат структурирани съобщения за разговор, да променят съхранената история или по друг начин да поставят toolUse блок на позицията, консумирана от цикъла на събитията.

AWS не е публикувала отделно CVE, диапазон от засегнати версии или известие за корекция за самостоятелни внедрявания на Strands. Ингбер и Ивги споделиха, че от AWS са им казали, че поведението попада върху страната на клиента от техния модел на споделена отговорност, и че компанията е реагирала с промяна в документацията, а не с корекция на кода.

Вместо това AWS документира поведението. Страница на Strands, озаглавена Trusted Message History, под категорията Safety and Security, казва на разработчиците, че блок за извикване на инструмент като най-ново съобщение кара агента да стартира този инструмент директно при следващото си извикване без извикване на модела междувременно, и че авторът на блока избира изцяло инструмента и неговите аргументи. Тя инструктира разработчиците да изграждат историята на съобщенията от собственото си приложение, а не от входни данни, които изпращачът може да оформи.

Два отделни пътя в ADK на Google

Първият пропуск на Google, проследяван като CVE-2026-18236 с CVSS v4.0 оценка 9.3, засяга ADK за Python версии преди 2.5.0.