КИБЕРБЕЗОПАСНОСТЬ

Файл в Downloads заставил AI-агента установить вредоносный npm-пакет

Файл AGENTS.md в папке Downloads заставил AI-агента попытаться установить вредоносный npm-пакет. Риск касается Codex и Claude Code.

✍️ Редакция iTech News | 26.10.2026 | ⏱ 4 мин | Источник: BleepingComputer
Файл в Downloads заставил AI-агента установить вредоносный npm-пакет

Обычный файл AGENTS.md, попавший в папку Downloads, смог подтолкнуть AI-агента к установке вредоносного npm-пакета. Исследователи воспроизвели атаку против OpenAI Codex с успешностью около 90% в безопасном тесте — и это неприятный сигнал для тех, кто запускает помощников прямо из каталога загрузок: безопасность AI-агентов теперь зависит не только от прав доступа и кода, но и от текстовых инструкций рядом с ним.

Об инциденте сообщает BleepingComputer. Специалисты компании Forever Security обнаружили на компьютере клиента попытку coding-агента установить пакет function-color. Разбор показал, что команду спровоцировал AGENTS.md в каталоге ~/Downloads — той же папке, которую агент использовал как рабочую директорию.

AGENTS.md — это не исполняемый файл и не эксплойт в привычном смысле. В таких Markdown-документах обычно оставляют правила для AI-инструментов: какие команды запускать, как оформлять код, чем проверять тесты и какие зависимости использовать. Проблема возникает, когда агент автоматически считает такой файл частью контекста проекта и послушно выполнит написанные в нём указания. Тогда текстовый документ получает вполне практическую силу: он способен склонить модель к запуску команд, изменению настроек или установке пакета с правами самого агента.

В Forever Security подчёркивают: речь не обязательно о дефекте конкретного поставщика. Если инструмент настроен читать инструкции из рабочей директории, он формально делает ровно то, для чего создан. Уязвимость появляется на стыке двух нормальных сценариев: браузер сохраняет файл в Downloads, а разработчик запускает AI-агента в этой папке, чтобы разобрать свежескачанный архив, скрипт или набор файлов.

Как папка загрузок превращается в канал атаки

Исследователи не установили, как именно файл оказался у конкретного клиента, но собрали демонстрацию возможной цепочки. В ней веб-страница загружает AGENTS.md в стандартный каталог Downloads без дополнительного действия пользователя. При проверке демонстрационная страница сохранила безобидный файл со строками «sensitive data here» и «line 2». Chrome, Edge и Firefox по умолчанию могут отправлять скачанное в ~/Downloads без запроса места сохранения, хотя обычно показывают уведомление о загрузке. Brave, по данным исследователей, потребовал подтвердить скачивание, что заметнее для пользователя.

Одного появления файла недостаточно: жертва должна запустить агента именно в Downloads. Но этот сценарий не экзотика. Исследователь Forever Security Галь Вайзман сообщил изданию, что во внутренней статистике компании сотни клиентов запускают из этой директории Claude Code, OpenAI Codex и Cursor CLI. Только у Claude Code зафиксировали более 1 300 сессий, стартовавших из папки загрузок. Для разработчика это может выглядеть как удобная мелочь: «разложи файлы из архива», «посмотри, что в новом репозитории», «почини скрипт, который я только что скачал». Для атакующего — предсказуемая точка входа.

В тесте с Codex авторы атаки использовали безвредную полезную нагрузку, открывающую калькулятор, и получили успех примерно в 90% запусков. Отдельно они проверили похожую технику для Claude Code: вредоносный CLAUDE.md перенаправлял API-трафик на контролируемый сервер. Это позволяло получить OAuth-токен агента, выдать себя за модель и вернуть вызовы инструментов, приводящие к выполнению кода. В этой серии результативность составила около 50% попыток. Такие цифры нельзя механически переносить на каждую конфигурацию, но они показывают, что атака не остаётся красивой схемой на слайде.

Для команд разработки здесь есть ещё один неудобный нюанс. AI-агент часто воспринимают как расширенный интерфейс к терминалу: он может читать файлы, предлагать патчи, запускать тесты и ставить зависимости. Но его поведение задаёт не только запрос пользователя. На него влияют локальные файлы инструкций, содержимое репозитория и контекст рабочей папки. Поэтому безопасность AI-агентов стоит включать в правила работы с внешними артефактами так же, как проверку чужих npm-зависимостей или вложений в почте.

Что поменять в повседневной практике

Самая полезная мера здесь скучна, а значит, хороша: не использовать ~/Downloads как рабочую директорию для AI-кодинга. OpenAI и Anthropic рекомендуют запускать агентов из корня конкретного проекта. Узкая рабочая область даёт модели нужный контекст и одновременно сокращает набор файлов, которые она может принять за инструкции. Не стоит стартовать помощника из домашней папки или общего родительского каталога только потому, что так быстрее добраться до нескольких проектов.

Перед запуском агента в новом репозитории или каталоге со скачанными файлами стоит проверить AGENTS.md, CLAUDE.md и похожие документы вручную. Особое внимание — требованиям установить пакет, выключить защиту, менять адрес API, передавать токены или выполнять команды вне проекта. Полезно оставить включёнными подтверждения опасных действий и песочницу, а недоверенный код сначала открывать в изолированной среде. Для IT-директора это уже не частная привычка отдельных инженеров: корпоративные гайды по использованию агентов должны описывать допустимые рабочие каталоги, обращение с токенами и порядок проверки агентских инструкций.

Главный вопрос теперь не в том, умеют ли модели читать AGENTS.md, а в том, насколько явно инструменты покажут границу между инструкциями владельца проекта и случайным файлом из Downloads. Пока эта граница во многом проходит через дисциплину пользователя. Демонстрация Forever Security напоминает: чем автономнее coding-агент, тем осторожнее нужно выбирать папку, из которой ему разрешено думать и действовать. Подробности эксперимента приведены в материале BleepingComputer.

Поделиться: Telegram X LinkedIn