
Агентный сканер безопасности ИИ, который рассуждает как атакующий по исходному коду, подтверждает эксплуатируемые уязвимости с помощью исполняемых PoC и обеспечивает исправления по принципу «сначала тесты» через навыки hunt, fix и verify.
[!NOTE] Поддерживаемый форк Capital One's VulnHunter (Apache-2.0) — создан для работы на любой агентной среде, а не только в Claude Code. Фокус этого форка: переносимость между средами, песочница (контейнеризованная) для валидации эксплойтов и PoC с измеряемым воздействием. См. Зачем эти изменения · Что меняет этот форк · Цифры.
От сопоставления шаблонов к доказуемости.
VulnHunter — это открытый агентный инструмент безопасности на базе ИИ, который применяет проактивный анализ с позиции атакующего непосредственно к исходному коду.
В отличие от традиционных пассивных SAST-сканеров, которые отмечают подозрительные шаблоны и часто дают ложные срабатывания, VulnHunter рассуждает как противник. Он выявляет, какие дефекты действительно эксплуатируемы, строит карты потенциальных путей атак и предлагает точечные, подкреплённые доказательствами исправления.
Современные цепочки поставок программного обеспечения глубоко взаимосвязаны. Одна уязвимость в широко используемом компоненте с открытым исходным кодом может одновременно затронуть тысячи предприятий.
VulnHunter был разработан внутри Capital One и открыт для сообщества. Этот форк продолжает эту работу — та же методология, переработанная для запуска на любой агентной среде, с песочницей (контейнеризованной) для валидации эксплойтов и PoC с измеряемым воздействием в качестве дорожной карты. См. Что меняет этот форк.
Предупреждение о двойном назначении VulnHunter выполняет работы в области кибербезопасности двойного назначения (обнаружение и эксплуатация уязвимостей). Ожидайте ограничений: большинство коммерчески доступных моделей применяют защитные механизмы для кибербезопасности двойного назначения, а агрессивное поведение при эксплуатации может вызвать ограничения скорости или флаги использования. Разработка и тестирование VulnHunter проводились на моделях с открытыми весами, предоставленных сообществом — дерискованных, abliterated и нецензурированных — именно эти модели, вероятно, будут иметь значение для организационного использования в дальнейшем. Проводите аудит только того кода, которым вы владеете или который вы иным образом уполномочены проверять.
[!IMPORTANT] Предварительные требования и требования к модели Методология VulnHunter построена для работы на моделях с открытыми весами, предоставленных сообществом — дерискованных, abliterated, нецензурированных, которые организации могут реально развернуть. Требуется способная модель рассуждения; самая сильная модель, которую предлагает ваша среда, даёт лучшие результаты, но методология не зависит от фронтирной модели конкретного вендора. Вы предоставляете собственный доступ к модели.
| Возможность | Upstream (Capital One) | Этот форк | Статус |
|---|---|---|---|
| Переносимость между средами | Навыки вызывают именно Claude Code; установщик нацелен на ~/.claude/skills; гейты моделей жёстко задают Opus; среда фиксирует claude-opus-4-8 | Навыки — это переносимые файлы промптов (любая среда с каталогом навыков + субагентами); контракт окружения VULNHUNT_SKILLS_DIR / VULNHUNT_AGENTS_DIR / VULNHUNT_BIN_DIR / VULNHUNT_HOST_CMD / VULNHUNT_MODEL; гейты моделей переформулированы как "самая способная модель рассуждения вашей среды" | Реализовано |
| Установщик без догадок | install.sh предполагает ~/.claude/skills | Явные каталоги, учитывает семантику GROK_HOME, записывает лаунчер vh в VULNHUNT_BIN_DIR/~/.local/bin, устанавливает навык vulnhunter-run + определение агента; обновлены эквиваленты .cmd для Windows | Реализовано |
Операторский навык vulnhunter-run | — (отсутствует) | Автономный оператор: клонирование → охота → поиск результатов → запись/валидация манифеста сканирования, с явными правилами остановки и без импровизации | Реализовано |
| Усиление бенчмарка/судьи | Фиксированная модель + базовый повтор | Модель через окружение, конфигурация повторов/откатов, трассировка точек потерь analyze_misses, отслеживание истории по каждой находке | Реализовано |
| Нейтральный к среде язык отчётов | Специфичная для Claude проза во всех навыках | Нейтральный к среде язык инструментов (Agent → субагент, Claude CLI → сессия среды) | Реализовано |
| Валидация эксплойтов с приоритетом песочницы | Тесты эксплойтов могут быть статическими трассировками; выбор среды выполнения ad hoc | Предоставление среды выполнения с приоритетом Docker; среда выполнения фиксируется для каждой находки; серьёзность Medium+ требует выполнения | В процессе |
| PoC с измеряемым воздействием | PoC — это документы; воздействие утверждается | Исполняемый PoC + число воздействия в находке (раскрытые строки, усиленные запросы, потерянные ключе-часы) | В процессе |
Методология VulnHunter по своей природе не зависит от хоста: это процедура промптов, а не привязка к инструменту. Исходный проект вырос внутри Claude Code — согласованный выбор и правильный первый дом. Но ландшафт агентных сред расширился, и методология безопасности, которая устанавливается только в одну из них, перестаёт быть возможностью аудита и становится функцией вендора. Этот форк вносит четыре изменения, каждое со своей причиной.
Каждый навык здесь — это переносимый файл промпта с явным контрактом окружения (VULNHUNT_SKILLS_DIR, VULNHUNT_AGENTS_DIR, VULNHUNT_MODEL, VULNHUNT_HOST_CMD), а гейты моделей теперь запрашивают самую способную модель рассуждения вашей среды вместо конкретного продукта. Лучше означает: одна и та же методология устанавливается в любую среду, которую уже использует ваша команда — и становится сопоставимой между средами в бенчмарк-прогонах, именно так и разрабатывается этот форк.
Установщик upstream безусловно копировал навыки в ~/.claude/skills. На машине с двумя средами — или со средой с перемещённым домашним каталогом — эта догадка устанавливает в неправильное место, молча. Установщик форка спрашивает или принимает переменные окружения и громко падает с точной инструкцией, когда ответ отсутствует. Лучше означает: безопасно на машинах с несколькими средами, корректно при перемещённых домашних каталогах, громко вместо молчания при неверной конфигурации.
Исходный дизайн уже требует фальсификации и тестов эксплойтов. Что оставалось открытым — насколько усердно работать, чтобы действительно их выполнить: статическая трассировка, мок-тест или реальный контейнеризованный сервер. В одном бенчмарке из шести прогонов против одного коммита эта свобода дала от 3 до 42 находок — и противоположные вердикты по одному и тому же стоку, один доказан против мока, другой закрыт тестом против реального сервера. Этот форк добавляет процедуру предоставления среды выполнения (с приоритетом Docker, фиксируется для каждой находки) и дисциплину PoC, где воздействие измеряется — утекшие строки, ×-усиление, потерянные ключе-часы — а не описывается словами. Лучше означает: валидность находки больше не зависит от того, у какой модели был инстинкт поднять контейнер. (В процессе — план сборки в публичной дорожной карте; спрашивайте в issues или следите за Discussions репозитория.)