Скилл Cloudflare для аудита безопасности кода: 6 фаз, проверка находок вторым агентом и установка одной командой

Скилл Cloudflare для аудита безопасности кода: 6 фаз, проверка находок вторым агентом и установка одной командой

Все команды сверены с README репозитория 24 октября 2026 года, звёзды — по данным GitHub API на ту же дату.

Cloudflare выложила в открытый доступ security-audit-skill — скилл для coding-агентов, который превращает агента в аудитора безопасности. Репозиторий создан 18 июня 2026 года, лицензия MIT, на 24 октября в нём 43 343 звезды. По описанию авторов, это скилл «для многофазных аудитов безопасности с независимо проверенными машиночитаемыми находками». В README сказано, что с этого скилла началась внутренняя система Cloudflare для поиска уязвимостей.

Установка

Скилл ставится через CLI skills, ему нужен Node.js (npx идёт вместе с ним). Команда установки из README:

npx skills add https://github.com/cloudflare/security-audit-skill \ --skill security-audit

Чтобы поставить скилл для всех проектов пользователя, а не для текущего, в README добавлен флаг --global. Выбор агента и неинтерактивный режим описывает npx skills --help.

Как запустить

Скилл включается обычной фразой в чате с агентом. Примеры из README: security audit this codebase, find security vulnerabilities in ./src, do a security review, output to ~/audits/my-project.

Режимов два. Прямая просьба провести аудит или пентест запускает полный аудит. Вопросы по безопасности и точечный поиск уязвимостей идут в режиме подсказок, а отчёты создаются, только если их попросить. Без указанной папки полный аудит пишет результат в ~/security-audit-skill//run-. Внутрь проверяемого репозитория скилл пишет, только если выбрать папку, которую игнорирует система контроля версий.

Шесть фаз

  • Разведка. Агент описывает архитектуру, границы доверия и точки ввода данных, результат — файлы architecture.md и coverage-ledger.json.
  • Охота, ведомая покрытием. Изолированные «охотники» получают участки из реестра покрытия, отдельные «критики» ищут пробелы.
  • Проверка кандидатов. Каждого кандидата в находки берёт свежий агент-верификатор и пытается его опровергнуть.
  • Структурированный вывод. Записи со статусами confirmed, needs_validation и rejected попадают в findings.json и проверяются по report-schema.json.
  • Независимая проверка записей. Новые агенты перепроверяют утверждения об исходном коде, а существенные замены проходят ещё одного верификатора.
  • Отчёт. Из проверенных записей собираются REPORT.md, FINDINGS-DETAIL.md и NEEDS-VALIDATION.md.

Чем скилл отличается от обычного «найди уязвимости»

  • Агент, который проверяет находку, никогда не тот, что её нашёл.
  • Статус confirmed требует полной трассировки до исходного кода и ограниченного наблюдаемого результата. У needs_validation есть конкретный нерешённый факт и нет серьёзности.
  • Серьёзность выводится из вероятности и последствий. Пробелы defense-in-depth считаются заметками по укреплению, а не уязвимостями.
  • Запуски накапливаются: следующий использует прежние реестры и находки, чтобы закрыть пробелы и перепроверить изменённый код. По данным README, в тестовых прогонах один запуск находил примерно половину уязвимостей, которые нашли повторные запуски в сумме.

Ограничения

  • Нужен агент, модель которого умеет вызывать инструменты и параллельные субагенты.
  • Для запуска сборок и тестов проверяемого проекта README требует песочницу на уровне ОС: без внешней сети, с очищенным окружением и лимитами ресурсов. Без неё находки остаются в статусе needs_validation, а код цели не исполняется.
  • Нужен Node.js для валидаторов validate-findings.cjs и validate-coverage-ledger.cjs — они без зависимостей.

В методических документах репозитория разобраны классы атак: безопасность памяти, AI/LLM, веб-протоколы и авторизация, клиентская сторона, цепочка поставок, облако, RPC и обмен сообщениями, исчерпание ресурсов, изоляция данных, межпроцессное взаимодействие на десктопе и мобильных.

Всё самое интересное — в нашем Telegram-канале «Claude без воды».

44