ГАЙД 2026

Аудит безопасности кода агентом: как запустить security-audit skill от Cloudflare

Скилл-репозиторий на 45 тыс. звёзд превращает coding-агента в аудитора: покрытие вместо чеклиста, отдельный валидатор находок и жёсткие требования к изоляции. Разбираем установку, запуск и то, чего этот инструмент не заменяет.

БезопасностьCoding-агенты2026
Уровень СреднийВремя настройки 15–20 минутДанные сняты 25.10.2026

security-audit — открытый навык для coding-агентов (репозиторий cloudflare/security-audit-skill, лицензия MIT), который превращает обычный запрос «проверь код на уязвимости» в шестифазный процесс с изолированными агентами, реестром покрытия и машинно-проверяемыми находками. Это не сканер и не замена пентесту: скилл задаёт методологию и формат артефактов, а ищет уязвимости ваш агент со своей моделью. Главное условие — песочница, без неё агент не имеет права исполнять код целиком.

45 334
Звёзд на GitHub
снято 25.10.2026
2 811
Форков
там же
6
Фаз аудита
от разведки до отчёта
13
Файлов-промптов
классы атак по типам целей

01Что это такое и откуда взялось

Скилл описывает себя как «кодинг-агентский навык, который превращает вашего агента в аудитора безопасности». Логика устроена по образцу промышленного harness: сначала агент строит карту доверенных границ и поверхностей ввода, затем ведёт охоту от реестра покрытия (а не от списка «проверь SQL-инъекции»), затем каждую находку отдаёт другому агенту, который пытается её опровергнуть, и только после этого пишет отчёт.

История важна для доверия к методологии: в README сказано, что навык — это стартовая точка того harness, который вырос в систему Cloudflare для поиска уязвимостей по всему парку проектов, и что описан он в публичном материале «Build your own vulnerability harness» в блоге Cloudflare. То есть перед нами не эксперимент энтузиаста, а опубликованный срез внутренней практики — хотя и в виде одного репозитория, а не сервиса.

Карточка проекта
Репозиторийcloudflare/security-audit-skill
ЛицензияMIT
Основной языкJavaScript (валидаторы .cjs), остальное — markdown-промпты
Создан18.06.2026
Последний push14.09.2026
Активность45 334 звезды, 2 811 форков на 25.10.2026
Установкаskills CLI: npx skills add, опционально --global
Требованияагент с субагентами, Node.js, песочница ОС
Как мы это проверяли
Мы читали README и файловую структуру репозитория, метрики звёзд и коммитов сняли через GitHub API 25.10.2026, а описание harness сверили с публичным постом в блоге Cloudflare. Сами аудиты на этом скилле не прогоняли: цифр «сколько уязвимостей находит» мы не приводим, кроме той оценки, которую дают авторы.

02Шесть фаз: что происходит по шагам

Процесс линейный, но с возвратами: реестр покрытия обновляется после каждой фазы, и валидатор прогоняется заново. Именно реестр, а не текст отчёта, определяет, что уже проверено, — это ключевое отличие от «попроси агента найти уязвимости».

Цикл аудита
11. РазведкаКарта архитектуры, границ доверия и входов → architecture.md22. Охота по покрытиюЕдиницы работы из реестра, на каждую — свой hunter, критики ищут пробелы33. Валидация кандидатовСвежий проверяющий на каждую находку: его задача — её опровергнуть44. Структурный выводconfirmed / needs_validation / rejected → findings.json по схеме55. Независимая сверкаАгенты сверяют утверждения по исходникам; замены — новым проверяющим66. ОтчётREPORT.md, FINDINGS-DETAIL.md, NEEDS-VALIDATION.md из записейМежду фазами 1 и 5 реестр покрытия пересобирается и валидируется заново
ФазаЧто делаетАртефакт
1. РазведкаАрхитектура, границы доверия, поверхности ввода, прошлые данныеarchitecture.md, coverage-ledger.json
2. ОхотаИзолированные hunters по единицам реестра, критики покрытияЗаписи проверок в реестре
3. ВалидацияСвежий проверяющий на каждого уникального кандидатаКандидаты с вердиктами
4. ВыводТри статуса, сверка со схемой отчётаfindings.json + report-schema.json
5. СверкаПроверка утверждений по исходникам, повтор для заменОбновлённые записи
6. ОтчётСборка документов из записей, а не из текста агентаREPORT.md, FINDINGS-DETAIL.md
Все артефакты создаются в каталоге прогона; в сам репозиторий ничего не пишется, если вы явно не указали каталог, игнорируемый системой контроля версий.
Прогоны аддитивны: следующий запуск читает прошлые реестр и находки, добивает пробелы и перепроверяет изменившиеся места. Поэтому первый прогон не обязан быть исчерпывающим.

Три статуса в findings.json — это не украшение, а вся суть метода. confirmed — есть полная трассировка до исходника и ограниченный наблюдаемый результат; needs_validation — есть точный неразрешённый факт и, подчёркнуто, нет severity; rejected — кандидат опровергнут. Отчёт, в котором все находки «критичны», на этом скилле технически невозможен: severity требует доказанного влияния.

03Установка: skills CLI, Node.js и проверка

Четыре шага до первого запуска
1
Проверить агента
Нужен coding-агент с поддержкой вызова инструментов и параллельных субагентов. Без субагентов схема «нашёл один — проверил другой» не работает, и скилл теряет смысл.
terminalcopy
claude --version
# подойдёт любой агент с tool use и субагентами
2
Проверить Node.js
Валидаторы находок и реестра — обычные .cjs-скрипты без зависимостей, им нужен только node.
terminalcopy
node --version
3
Поставить скилл
Команда ставит навык в текущий проект. Ключ --skill указывает, какой именно навык брать из репозитория.
terminalcopy
npx skills add https://github.com/cloudflare/security-audit-skill --skill security-audit
4
Или поставить глобально
Для пользовательского уровня: навык доступен во всех проектах, а не только в текущем.
terminalcopy
npx skills add https://github.com/cloudflare/security-audit-skill --skill security-audit --global
КомпонентЗачем нуженЧто будет без него
Агент с tool useЧитает код, запускает валидаторы, оркестрирует huntersСкилл не активируется по триггеру
Параллельные субагентыИзоляция охотников и независимая проверка находокФазы 2, 3 и 5 деградируют до одного контекста
Node.jsvalidate-findings.cjs и validate-coverage-ledger.cjsНечем проверить findings.json и реестр
Песочница ОССборки, тесты, браузеры, фаззеры — без сети и с лимитамиКод цели работы не исполняется, лиды остаются needs_validation
Четвёртая строка — не формальность: именно она отделяет аудит от «агент запустил недоверенный код на вашей машине».
Требование к песочнице в README описано подробно: запрет внешней сети, очищенное окружение по белому списку, лимиты ресурсов, запись только в выделенные scratch-каталоги.
Не запускайте это на рабочем ноутбуке без изоляции
Аудит по своей природе исполняет код проверяемого проекта: сборки, тесты, браузеры, эмуляторы. Если проект недоверенный (чужая зависимость, присланный архив), запуск вне песочницы — это исполнение чужого кода с вашими правами. Скилл это понимает и сам понижает такие лиды до needs_validation, но изоляцию всё равно обеспечиваете вы.

04Запуск: как формулировать запрос

Скилл активируется по смыслу запроса, а не по команде. Триггеры, перечисленные в README: «security audit», «find vulnerabilities», «pen-test the code». Дальше есть два режима: полный аудит (по умолчанию для прямых просьб проверить кодовую базу) и режим консультации — когда вы просто задаёте вопрос по безопасности и не просите артефакты.

триггеры в чате агентаtext
security audit this codebase
find security vulnerabilities in ./src
do a security review, output to ~/audits/my-project
# консультация без отчёта:
какие риски в обработке загрузки файлов?

Каталог вывода лучше задавать сразу. Если его не указать, полный аудит пишет в ~/security-audit-skill/<repo>/run-<N>, где N — номер прогона. Внутрь репозитория артефакты попадают только если вы явно выбрали каталог, который система контроля версий игнорирует, — иначе отчёт с описанием уязвимостей уедет в коммит.

Второй прогон не начинается с нуля: он читает прошлые реестр и findings.json, добивает непокрытые единицы, перепроверяет изменившиеся исходники и не считает устаревшие или неразрешённые пункты закрытыми. Практический вывод: гонять аудит стоит серией по расписанию, а не один раз перед релизом.

05Как читать результат

Читать надо не REPORT.md, а findings.json — отчёт собирается из него. В каждой записи есть вердикт, трассировка до исходника и наблюдаемый результат; записи со статусом needs_validation отдельно вынесены в NEEDS-VALIDATION.md, и это ваш список задач, а не мусор.

СтатусЧто означаетЧто делать
confirmedПолная трассировка до кода и ограниченный наблюдаемый результатИсправлять в первую очередь
needs_validationЕсть точный неразрешённый факт, severity нетДовести проверку вручную или дать песочницу
rejectedКандидат опровергнут проверяющимДержать как историю: при повторном прогоне не всплывёт
Валидатор findings.json прогоняется в фазе 4 и повторно после каждой замены в фазе 5, валидатор реестра — после создания реестра и каждого его обновления.
Файл-схема report-schema.json лежит в репозитории: если вы пишете свой постпроцессор, валидируйте по ней, а не по тексту отчёта.
Правило, которое экономит недели
Авторы отдельно фиксируют принцип: отсутствие второго слоя защиты — это не уязвимость, а заметка про hardening. Если слой A реально блокирует атаку, находка не становится критичной от того, что слоя B нет. Фильтруйте отчёт по этому правилу, иначе получите сотню «критичных» пунктов про отсутствующий WAF.

06Место на рынке: цифры и динамика

По звёздам проект Cloudflare — второй среди крупных skill- и plugin-репозиториев, которые мы снимали 25.10.2026, и первый среди «прикладных» навыков: впереди только общий каталог anthropics/skills. При этом репозиторий узкий: это не платформа, а набор промптов и два валидатора.

Звёзды GitHub у skill- и plugin-репозиториевтыс. звёзд, снято 25.10.2026 через GitHub API
0тыс.100тыс.200тыс.anthropics/skills183,6тыс.cloudflare/security-audit-skill45,3тыс.anthropics/claude-plugins-official44,4тыс.anthropics/knowledge-work-plugins32,7тыс.cursor/plugins13,9тыс.akitaonrails/ai-memory13,3тыс.android/skills9,6тыс.
Звёзды не измеряют качество аудита — они измеряют внимание. Сам факт, что прикладной навык обогнал официальные каталоги плагинов, говорит о спросе на готовые процедуры, а не о том, что он находит больше.
Коммиты в репозитории по неделямпоследние 20 недель, api.github.com/stats/participation
01,22,53,8514.0628.0612.0726.0709.0823.0806.0920.0904.1018.1001253000000002100000
Активность сосредоточена в двух всплесках (июнь — запуск, начало сентября — правки), после 14.09.2026 коммитов нет. Это важно при выборе: промпты скилла не обновлялись шесть недель, и на новом агентском рантайме поведение может отличаться.
Редакционные оценки Qantcore
Прозрачность метода9,2Готовность к продакшену7,4Требования к окружению5,6Документация8,8Свежесть обновлений5
Наша оценка по открытым данным, не результат собственного аудита. Балл за требования снижен из-за песочницы: без неё половина процесса не работает в полную силу.

07Чего этот скилл не делает

Плюсы
  • Методология вместо чеклиста: покрытие реестром, а не списком пунктов
  • Находку проверяет не тот агент, который её нашёл
  • Машинно-проверяемый формат находок со схемой и валидаторами
  • Прогоны аддитивны: следующий аудит не повторяет прошлый
  • 13 файлов с классами атак под разные типы целей
Минусы
  • Нужен агент с параллельными субагентами — не каждый подойдёт
  • Без песочницы ОС процесс деградирует до needs_validation
  • Репозиторий не обновлялся с 14.09.2026
  • Не заменяет ручной пентест и не даёт гарантий покрытия
  • Промпты на английском, русской документации нет

Главная иллюзия, которую нужно снять: «агент найдёт всё». Авторы честно пишут, что один прогон находит примерно половину того, что находит серия прогонов — то есть сам инструмент заявляет, что результат зависит от количества итераций. Формально это не бенчмарк, а наблюдение авторов на их тестах, и мы приводим его именно так.

Юридическая сторона
Скилл предназначен для аудита кода, на который у вас есть право. Запуск такого процесса против чужого сервиса — это уже не аудит, а несанкционированное тестирование, и лицензия MIT тут ничего не разрешает: она про использование кода, а не про разрешение атаковать чужие системы.

08Кому и как этим пользоваться

Берите, если у вас есть изолированное окружение и повторяющийся цикл: свой сервис, регулярные релизы, желание получить проверяемый список находок вместо простыни текста от агента. Начните с одного репозитория, задайте каталог вывода вне рабочей копии и прогоните дважды — второй прогон покажет, работает ли аддитивность на вашем коде. Не берите, если нет песочницы: без неё вы получите отчёт из одних needs_validation и потраченные токены.

Смежное чтение на сайте: общие принципы защиты агентов, отдельный гайд про безопасность агентских архитектур и разбор навыков как формата — по ссылкам ниже.

Частые вопросы

Это официальный продукт Cloudflare?
Это открытый репозиторий организации Cloudflare на GitHub под лицензией MIT. В README сказано, что навык — стартовая точка того harness, который вырос в систему поиска уязвимостей Cloudflare. Поддержки и SLA у репозитория нет, последний push — 14.09.2026.
Нужен ли Claude Code или конкретный агент?
Конкретный вендор не требуется, но нужен агент с вызовом инструментов и параллельными субагентами: фазы 2, 3 и 5 построены на изоляции охотников и независимых проверяющих. Установка идёт через skills CLI, который умеет ставить навык в разные рантаймы.
Можно ли запускать без песочницы?
Технически да, но процесс тогда неполный: по правилам скилла код проверяемого проекта без изоляции не исполняется, и такие лиды остаются в статусе needs_validation без severity. Для недоверенного кода запуск вне песочницы — это исполнение чужого кода с вашими правами.
Заменяет ли это пентест?
Нет. Это методология для агента: она снижает хаос и делает находки проверяемыми, но не даёт гарантий покрытия. Авторы прямо пишут, что один прогон находит примерно половину того, что находит серия прогонов.
Сколько времени занимает один аудит?
Зависит от размера кода и числа субагентов: процесс включает разведку, нарезку реестра, охоту и пофазную проверку каждого кандидата. В README нет нормативов по времени, поэтому планируйте итеративно: первый прогон — черновой, второй и третий добивают пробелы.
Куда попадают результаты и не утекут ли они в репозиторий?
По умолчанию в каталог ~/security-audit-skill//run-. Внутрь репозитория артефакты пишутся только если вы сами указали каталог, игнорируемый системой контроля версий. Отчёт содержит описания уязвимостей, поэтому в общий репозиторий его лучше не коммитить.

Источники и официальные ссылки

Вердикт Qantcore
8,1/ 10
Один из самых аккуратных публичных наборов промптов для аудита: реестр покрытия, независимая проверка находок и валидаторы вместо красивых отчётов. Цена — требования к окружению: без песочницы и субагентов половина процесса не работает. Ставить стоит, если аудит у вас повторяется; как разовое средство «проверить всё перед релизом» он даст половину результата.
Что ещё почитать про безопасность агентов
Разборы векторов атак, sandbox-изоляции и валидации tool output — с проверяемыми источниками.