Новости
CVE-2026-60004: git-хук в Gitea даёт доступ к серверу
Критическая уязвимость CVSS 9.8 в Gitea позволяет пользователю с правом записи в репозиторий выполнить произвольный код с привилегиями сервиса.
1 сентября 2026 года исследователи Manifold Security опубликовали отчёт GitSpawn — 8 уязвимостей в 7 AI-агентах. Файл .git/config в репозитории, полученном через ZIP-архив, USB или сетевой диск, заставляет инструменты выполнять произвольный код с привилегиями разработчика — в обход защитных диалогов и до аутентификации.

Коротко: GitSpawn — класс уязвимостей в AI-кодинг-агентах, при которых настройки файла .git/config (например, core.fsmonitor) используются как триггер выполнения кода. Атака работает, только если разработчик получает репозиторий в виде файлов — ZIP-архивом, с USB-носителя или по сетевому диску — а не клонирует его через git clone. Уязвимы Claude Code, Goose, Grok Build, Hermes Agent, Qwen Code, Codex и Cursor. Часть инструментов уже исправлена; Claude Code (вариант ultrareview), Hermes Agent, Qwen Code и Grok Build — нет.
1 сентября 2026 года Франсиско Росалес (Francisco Rosales), инженер по наступательной безопасности компании Manifold Security, опубликовал отчёт GitSpawn: A Single Flaw Lets Untrusted Repos Run Code in Claude Code, Codex, Cursor, and Grok. В нём описаны 8 уязвимостей в 7 инструментах для AI-разработки.
Суть проблемы: AI-агенты при старте собирают контекст рабочего каталога и для этого вызывают команды git — например, git status. Если репозиторий содержит специально подготовленный файл .git/config, некоторые его настройки воспринимаются git как команды для исполнения. Агент запускает их с привилегиями текущего пользователя — вне своей «песочницы» и без каких-либо диалогов одобрения.
В тот же день OpenAI независимо опубликовала три CVE, покрывающие идентичный класс уязвимостей в Codex — их прислали три разные исследовательские группы.
Файл .git/config — стандартный текстовый конфиг-файл репозитория git. Он хранит параметры удалённых серверов, имя ветки и настройки поведения git. Часть этих параметров, в частности core.fsmonitor, задают внешние команды, которые git вызывает автоматически при определённых операциях.
Параметр core.fsmonitor — это хук файловой системы: git передаёт ему список изменённых файлов для ускорения работы в больших репозиториях. Злоумышленник подменяет значение этого параметра на произвольную команду оболочки. Когда AI-агент вызывает git status, git запускает указанную команду. Результат: произвольный код выполняется с правами разработчика, читает, изменяет или удаляет файлы, получает доступ к ключам и токенам в рабочем окружении.
git cloneGit отказывается применять хуки из клонируемого репозитория — это стандартная защита. GitSpawn срабатывает только когда разработчик получает каталог с .git/ как файлы: через ZIP-архив, USB-носитель, общую папку или облачный диск. Именно такой способ передачи проектов между командами остаётся распространённой практикой.
Manifold Security проверила семь AI-агентов. По состоянию на 1 сентября 2026 года статус исправлений следующий:
| Инструмент | Статус | Подробности |
|---|---|---|
| Claude Code | ⚠ Частично | Вариант core.fsmonitor закрыт в v2.1.196; вариант ultrareview не исправлен в v2.1.252 |
| Goose | ✓ Исправлено | Закрыто в версии 1.44.0; CVE-2026-72718, CVSS 7.0 |
| OpenAI Codex | ✓ Исправлено | 3 CVE опубликованы OpenAI 1 сентября 2026 |
| Cursor | ✓ Исправлено | Исправлено до публикации отчёта |
| Hermes Agent | ✗ Не исправлено | Уязвимо в v0.21.0; CVE-2026-71963 |
| Qwen Code | ✗ Не исправлено | Уязвимо в v0.22.3 |
| Grok Build | ✗ Не исправлено | Уязвимо в v1.0.13; выполнение по первому нажатию клавиши |
Особенно опасен Grok Build: по данным Manifold, выполнение кода происходило при первом нажатии клавиши в интерфейсе агента. У Qwen Code код запускался до аутентификации пользователя.
Для аудитории Loadfile особенно важен механизм доставки: атака работает именно через передачу репозитория как набора файлов, а не через git clone. Это делает уязвимость актуальной для повседневных рабочих сценариев:
.git/ с вредоносным config..git/.ZIP-архивы — потенциально опасный формат: они могут скрывать вредоносные структуры, которые срабатывают только после распаковки. GitSpawn — ещё один пример того, как безобидный на вид архив с исходным кодом может стать вектором атаки.
Если вы работаете с AI-агентом (Claude Code, Cursor, Codex и другими) и регулярно открываете в нём проекты, полученные в виде ZIP-архивов или файловых копий, — убедитесь, что используете актуальную версию инструмента.
Дополнительная мера: перед открытием незнакомого проекта в AI-агенте проверьте содержимое файла .git/config на наличие строк fsmonitor, editor, pager с нестандартными значениями. Подробнее о практиках кибербезопасности в разработке — в нашем материале.
Получили проект ZIP-архивом? Перед открытием в AI-агенте откройте терминал и выполните: cat /путь/к/проекту/.git/config. Убедитесь, что в секции [core] нет строк вида fsmonitor = <команда>. Если есть — удалите строку до запуска агента.
GitSpawn — не первый случай, когда .git/-каталог используется как вектор. Ранее мы писали об атаке через CVE-2026-60004 в Gitea, где произвольный git-хук запускался с привилегиями сервиса. Принцип схожий: атакующий использует легитимный механизм git (хуки, fsmonitor, конфигурационные команды) для выполнения произвольного кода.
Принципиальное отличие GitSpawn — жертва не запускает git напрямую. Код выполняет AI-агент в момент, когда он собирает контекст рабочего каталога. Пользователь может даже не знать, что агент обращается к git в фоне.
По теме: Безопасность веб-приложений — чек-лист уязвимостей и методов защиты для разработчиков.