AI Фактор

Агент у Downloads: підкинутий файл переписує налаштування

Прийом 01.11.2026

Forever Security 22 жовтня показала: вебсторінка зберігає файл у Downloads при самому відкритті, без кліків. Якщо запустити там Claude Code чи Codex, агент може виконати інструкції з підкинутого CLAUDE.md чи AGENTS.md. У Codex понад 90% спроб додали MCP-сервер і запустили вбудований код. У Claude Code близько половини спроб записали сторонню адресу в .claude/settings.json. Тестували переважно на заглушці, що відкриває калькулятор. У папках із безпековими нотатками атака на Claude щоразу провалювалась.

За словами дослідників, агент працює як задумано, а ризик у тому, з якої папки його запускають.

Що шукати в папці перед запуском агента

Атака працює через файли, які Claude Code і Codex підхоплюють самі, коли їх запускають у папці. Перед стартом агента в Downloads чи в чужому репозиторії перевірте, чи немає там:

  • файлів з інструкціями: CLAUDE.md, CLAUDE.local.md, AGENTS.md, AGENTS.override.md;
  • папок налаштувань .claude і .codex та файлу .mcp.json;
  • адрес, куди йде трафік: ANTHROPIC_BASE_URL, проксі, base_url;
  • налаштувань, що запускають команди: hooks, apiKeyHelper, statusLine;
  • обходу підтверджень і пісочниці: bypassPermissions і enableAllProjectMcpServers у Claude Code, approval_policy = "never" чи sandbox_mode = "danger-full-access" у Codex.

Ті самі ключі варто знайти й у глобальних конфігах ~/.claude/settings.json та ~/.codex/config.toml і переконатися, що кожен запис ви додали самі.

Перевірка скриптом за три хвилини (Windows)

Автор статті на note.com виклав PowerShell-скрипт, який перевіряє все зі списку вище. Скрипт лише читає файли: нічого не змінює, не видаляє і не надсилає. Порядок такий:

  • відкрийте Windows PowerShell, права адміністратора не потрібні;
  • скопіюйте скрипт із джерела повністю, від першого до останнього рядка;
  • прочитайте його перед вставкою. Там використано лише Get-ChildItem, Get-Content, Select-String і Write-Host, мережевих викликів немає;
  • вставте скрипт, натисніть Enter і дочекайтеся фінального рядка про те, що перевірка лише читала файли. Повідомлення скрипта японською.

Крок із читанням не пропускайте. Уся історія про те, що не можна виконувати інструкції з невідомих файлів, не прочитавши їх. Щоб перевірити клонований репозиторій, замініть рядок $Folder = Join-Path $HOME 'Downloads' на $Folder = 'C:\work\my-repo'.

Як читати результат

Мітка [見つけた] означає знайдений файл з інструкціями або папку налаштувань. [確かめて] позначає знайдену адресу зв'язку чи команду. [情報] показує команди з глобальних налаштувань, наприклад ваші власні hooks. Їх не враховано в загальному лічильнику, але переглянути все одно варто. Якщо щось знайшлося:

  • не запускайте агента в цій папці;
  • відкрийте файл у Блокноті й прочитайте;
  • якщо ви його не створювали або не впізнаєте вміст, видаліть чи перенесіть його;
  • якщо в налаштуваннях є незнайома адреса, а агент у цій папці вже запускався, дослідники радять змінити токени входу та API-ключі.

Перед тим як комусь показувати скриншот, перевірте його. Значення env і рядки зі словами token чи key замасковано, ім'я користувача замінено на ~, але перші 80 символів команд із hooks виводяться як є.

Де перевірка не допоможе

Скрипт шукає лише за назвами файлів і ключів, тож безпечність вмісту оцінюєте ви. Він заходить на глибину до трьох рівнів. MCP-сервери, додані командою (вони лежать у ~/.claude.json), скрипт не бачить: їх показують /mcp усередині Claude Code або claude mcp list у терміналі. Налаштування пісочниці Claude Code він теж не перевіряє.

Скрипт перевірено тільки у Windows PowerShell 5.1 на Windows 11, на Mac його не тестували. Список ключів відповідає документації станом на 29.10.2026, тож нові налаштування після оновлень скрипт пропустить. Результат «нічого не знайдено» не гарантує безпеки, а лише показує, що за цим списком проблем немає. Сам автор запускає агентів тільки з однієї робочої папки й закрив їм доступ до облікових даних і SSH-ключів.

Раніше в теміClaude Ultra без пʼятигодинного ліміту, тижневий лишаєтьсяПізніше в теміПідроблене розширення Claude Code в маркетплейсі Cursor
Читати в ТелеграміПрактика ШІ в бізнесі — щодня, без хайпу