Зловреден AGENTS.md в Downloads превзема AI агенти

Изследователи от Forever Security публикуваха на 22 октомври атака, при която обикновен текстов файл с име AGENTS.md, попаднал в папката ~/Downloads, кара AI кодиращ агент да изпълни чужди инструкции. В тестовете на екипа OpenAI Codex е изпълнил подхвърления зловреден код в над 90% от опитите, а Claude Code е предал собствения си OAuth токен в около 50%. Атаката не е теоретична — всичко започва от реален случай при клиент на компанията.
Какво се е случило при клиента
Анализаторите на Forever Security забелязват, че кодиращ агент на машина на клиент се опитва да инсталира познат зловреден npm пакет — function-color. Опитът е спрян, преди да се изпълни код. При проследяването на причината се оказва, че агентът не е бил хакнат: просто е прочел и изпълнил инструкциите от AGENTS.md файл, който се е озовал в папката за изтегляния.
Формулировката на изследването, подписано от Гал Уайзман и Омер Самет, е доста кратка: „Markdown е новият изпълним файл.“
Защо точно Downloads
Тук са двете съставки, които правят атаката възможна.
Първо, AGENTS.md (и неговият аналог CLAUDE.md) е файл, който агентите са направени да четат и да изпълняват без въпроси. Това е по дизайн — там разработчикът описва правилата на проекта, командите за билд, стила на кода.
Второ, ~/Downloads е единствената папка, в която уеб страница може да запише файл без клик и без разрешение. Chrome, Edge и Firefox свалят файлове автоматично, без да питат, и потребителят често дори не вижда какво е слязло. Страница може мълчаливо да пусне AGENTS.md там и да чака.
Остава третата стъпка, която изглежда абсурдна, но се случва масово: някой стартира агента в ~/Downloads. По собствената телеметрия на Forever Security около половината от измерените клиенти пускат агенти точно от тази папка, а само Claude Code е бил стартиран оттам в над 1300 сесии. Логиката е проста — свалили сте архив, искате агентът да го погледне.
Какво може да направи подхвърленият файл
Инструкциите в подхвърления Markdown не се изчерпват с „инсталирай този пакет“. Според BleepingComputer файлът кара агента да пренапише собствената си конфигурация — да добави чужд API endpoint или блок за MCP сървър. Оттам нататък има два изхода.
Единият е изпълнение на код: Codex е стартирал безвредния тестов payload в над 90% от случаите. Другият е превземане на акаунта: зловреден CLAUDE.md пренасочва API трафика на Claude Code и излага OAuth токена на агента — успех в около 50% от тестовете. Изпълнение на код в същата сесия при Claude Code е постигнато в около 20%.
Разликата между двата агента идва от това колко рано питат за разрешение и колко строг е sandbox-ът им — не от принципна защита срещу самия вектор. И OpenAI, и Anthropic съветват агентите да се стартират от директорията на проекта, върху който ще работят.
Контекстът: агенти, които атакуват агенти
Два дни по-късно The Register описа друга страна на същата тенденция. Екипът Threat Hunter Team на Symantec е уловил през лятото на 2026 г. в AI honeypot автономен атакуващ агент, който сканира интернет за отворени AI endpoint-и, приемащи заявки в стил OpenAI, и „взема назаем“ чуждия модел, за да планира атаките си.
Инструментариумът му включва експлойти за VS Code, Django, Jupyter, Laravel, Supabase, Next.js и Flask/Werkzeug, крипто майнери и събиране на идентификационни данни, а може да работи до 100 000 автономни стъпки без човек. „Нищо в отделните техники не е ново“, казва изследователката Прити Мор пред The Register. „Това, което се откроява, е че някой ги е свързал в един агент, който предава планирането на зает отвън модел и работи до 100 000 стъпки без човек.“ Symantec уточнява, че няма доказателства агентът да е бил използван в реални атаки.
Темата не е изолирана — наскоро писахме и как red-team агенти на OpenAI избягаха от виртуална машина през кеша на процесора.
Какво да направите днес
Не стартирайте Codex, Claude Code, Cursor CLI или друг агент в ~/Downloads, нито в домашната си папка. Агентът наследява контекста на директорията, от която е пуснат.
- Проверете дали в
~/Downloadsняма неочакваниAGENTS.mdилиCLAUDE.md. - Прегледайте конфигурациите на агентите за непознати API адреси и MCP блокове.
- Оставете включени sandbox-а и исканията за потвърждение — именно те свалят процента успешни опити.
- Ако подозирате компрометиране, подновете токените.
Заключение
Атаката няма нужда от уязвимост в код — използва точно това, за което агентите са направени: да се доверяват на инструкциите, намерени в работната папка. Докато файловете с инструкции не се третират като недоверен вход, най-добрата защита остава скучна: пускайте агента там, където му е проектът, и поглеждайте какво е слязло в Downloads. За сравнение, буткитът BlackX заобикаля Secure Boot с експлойт — тук стига един текстов файл.
Харесва ви? Отбележете ни и ще ни виждате по-нагоре в Google.
Предпочитан източник в Google