Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
sec-af — Аудитор безопасности кода на основе ИИ на платформе AgentField, который доказывает эксплуатируемость уязвимостей с помощью заключений, трасс и практических доказательств. | Kitploit
Инструменты/GitHubGitHub/agent-field/sec-af
Статический анализСканеры уязвимостейАнализ КодаЭксплуатацияВеб-безопасностьТестирование на ПроникновениеDevSecOpsОбнаружение СекретовБезопасность Цепочки ПоставокБезопасность ИИ
GitHubagent-field/sec-af

sec-af

1944111 день назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Аудитор безопасности кода на основе ИИ на платформе AgentField, который доказывает эксплуатируемость уязвимостей с помощью заключений, трасс и практических доказательств.

РепозиторийСайт

SEC-AF

ИИ-нативный аудитор безопасности на базе AgentField

Apache 2.0 Python Built with AgentField Deploy on Railway More from Agent-Field

Результат • Тест • Как это работает • Сравнение • Быстрый старт • API

Другие инструменты отмечают шаблоны. SEC-AF доказывает эксплуатацию: каждая находка сопровождается вердиктом, трассировкой потока данных и доказательствами, с которыми можно работать. Бесплатно, с открытым исходным кодом, один вызов API. Полный аудит с 30 подтверждёнными находками стоит примерно $1.40 на вызовы LLM.

SEC-AF — AI-native security auditor

One-Call DX

Запустите с помощью CLI af (требуется af ≥ 0.1.87) — он выводит живой прогресс и печатает результат:```bash af call sec-af.audit --in '{"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}'

root@kitploit:~
Предпочитаете сырой HTTP? Используйте API напрямую через curl:```bash
curl -X POST http://localhost:8080/api/v1/execute/async/sec-af.audit \
  -H "Content-Type: application/json" \
  -d '{"input": {"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}}'

Что вы получаете в ответ

Это реальная находка от аудита SEC-AF DVGA (специально уязвимое GraphQL-приложение):```jsonc { "title": "OS Command Injection in run_cmd Helper Function", "severity": "critical", "verdict": "confirmed", // not "maybe" — confirmed exploitable "evidence_level": 5, "cwe_id": "CWE-78",

"rationale": "Tracer confirms complete data flow from GraphQL parameters (host, port, path, scheme, cmd, arg) to os.popen(cmd).read() sink. Sanitization functions are bypassable in Easy mode...",

"proof": { "verification_method": "composite_subagent_chain:sast", "data_flow_trace": [ { "description": "core/views.py:203 — GraphQL args defined (host, port, path, scheme)", "tainted": true }, { "description": "core/views.py:210 — URL constructed from user input", "tainted": true }, { "description": "core/views.py:211 — helpers.run_cmd(f'curl {url}') called", "tainted": true }, { "description": "core/helpers.py:9 — os.popen(cmd).read() executes input", "tainted": true } ] },

"location": { "file_path": "core/helpers.py", "start_line": 9, "code_snippet": "def run_cmd(cmd):\n return os.popen(cmd).read()" } }

root@kitploit:~
Каждый вывод содержит **вердикт** (`confirmed` / `likely` / `inconclusive` / `not_exploitable`), **объект доказательства** с полным трассировочным следом и точное местоположение в коде. Не «это может быть проблемой». SEC-AF отслеживает данные от источника до стока и доказывает, действительно ли они эксплуатируемы.

> Полный вывод бенчмарка (30 результатов): [`exampl/dvga-benchmark-result.json`](https://github.com/agent-field/sec-af/blob/HEAD/exampl/dvga-benchmark-result.json) | Анализ производительности: [`exampl/benchmark-analysis.json`](https://github.com/agent-field/sec-af/blob/HEAD/exampl/benchmark-analysis.json)

## Бенчмарк: DVGA

Мы запускаем SEC-AF против [Damn Vulnerable GraphQL Application](https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application), намеренно уязвимого приложения с 21 задокументированным сценарием безопасности.

| Метрика | Значение |
|---|---|
| Обнаружено сырых находок | 106 |
| После AI-дедупликации | 61 |
| **После состязательной верификации** | **28 подтверждено** |
| Неопределённые (требуют ручной проверки) | 1 |
| Не эксплуатируемые (корректно отклонены) | 1 |
| Снижение шума | 94% |
| Рёбер DAG (вызовов рассуждателя) | 82 |
| Вызовов агентов | ~166–255 |
| Запущено стратегий | 11 |
| Время выполнения | ~78 мин |
| Оценка стоимости (Kimi K2.5) | ~$0.18–$0.90 |

<details>
<summary><strong>Разбивка: 30 проверенных находок по категориям</strong></summary>

| Категория | Количество | Примеры |
|---|---|---|
| Отсутствие аутентификации | 8 | ImportPaste, delete_all_pastes, system_debug, CreateUser, file upload |
| Инъекция команд | 4 | `os.popen(cmd)` через ImportPaste, system_debug, system_diagnostics |
| SQL-инъекция | 3 | Несанированный `filter` в `resolve_pastes`, внедрение LIKE-паттерна, вход |
| Обход аутентификации | 3 | Отключённая подпись JWT, обход авторизации JWT, сломанная аутентификация по паролю |
| Учётные данные в открытом виде | 3 | Хранение паролей в открытом виде, сравнение в открытом виде, пароль в диагностике |
| SSRF | 2 | Мутация ImportPaste подписывается на URL, предоставленные пользователем, на стороне сервера |
| Бизнес-логика / санитизация URL | 2 | Недостаточная санитизация URL, массовое удаление без аутентификации |
| DoS / истощение ресурсов | 3 | Отсутствие пагинации в запросах пользователей/аудитов, неконтролируемый simulate_load |
| Конфигурация / секреты | 2 | Жёстко закодированные секреты JWT/Flask, режим отладки включён в продакшне |

</details>

<details>
<summary><strong>Проектные паттерны: как работает ИИ-нативный анализ безопасности</strong></summary>

SEC-AF применяет несколько архитектурных паттернов, которые становятся возможными только при компоновке множества специализированных ИИ-агентов вместо одного монолитного сканирования. Эти паттерны решают фундаментальные задачи ИИ-управляемого анализа безопасности.

**1. Состязательное напряжение агентов (HUNT vs. PROVE)**

Большинство ИИ-инструментов безопасности спрашивают одну модель «уязвимо ли это?» и принимают ответ. SEC-AF структурно разделяет агентов _нахождения_ и _опровержения_. Охотники стимулированы находить уязвимости; проверяющие — опровергать их. Каждая находка проходит через цепочку верификации из 4 агентов — трассировщик восстанавливает поток данных, анализатор санитизации ищет смягчения, которые охотник мог пропустить, гипотезатор эксплойтов конструирует конкретный сценарий атаки, а агент вердикта взвешивает все противоречивые свидетельства. Это состязательное напряжение между агентами и обеспечивает снижение шума на 94% — сама архитектура кодирует скептицизм.

**2. Сигнальный каскад с прогрессивным сужением**

Вместо того чтобы сбрасывать все находки на пользователя, конвейер сжимает сигнал на каждом этапе: 106 сырых находок → 61 после AI-дедупликации → 30 после состязательной верификации. Каждая фаза — это фильтр. Это отражает то, как человеческие команды безопасности проводят триаж: сначала широкое обнаружение, затем последовательно более строгая проверка. Ключевая идея в том, что каждый фильтр — это _иной вид_ ИИ-рассуждения: семантическое сходство для дедупликации, анализ распространения для верификации, конструирование эксплойта для подтверждения.

**3. Информационная экономия через обрезку контекста**

LLM галлюцинируют больше, когда получают нерелевантный контекст. SEC-AF направляет каждому агенту только ту информацию, которая ему нужна: охотник за инъекциями получает контекст рекогносцировки, обрезанный до карт потоков данных и точек входа, в то время как охотник за криптографией получает деревья зависимостей и паттерны управления ключами. Верификаторы получают проекции находок только с теми полями, которые нужны для их конкретного метода проверки. Эта обрезка контекста для каждой стратегии уменьшает как галлюцинации, так и стоимость — агенты не могут запутаться в информации, которую они никогда не видят.

**4. Потоковое перекрытие фаз**

Традиционные конвейеры работают последовательно: сначала рекогносцировка, затем охота, затем доказательство. SEC-AF перекрывает фазы через `asyncio.Queue` — охотники начинают потреблять результаты рекогносцировки по мере их поступления, а дедупликация обрабатывает находки по завершении каждого охотника. Проверяющие начинают верификацию первых дедуплицированных находок, пока более поздние охотники ещё работают. Эта потоковая архитектура сокращает время выполнения без ущерба для сигнального каскада — каждая находка всё равно проходит через все фильтры, просто раньше.

**5. Динамическая маршрутизация через ИИ-шлюзы**

Конвейер адаптируется во время выполнения на основе того, что обнаруживает. ИИ-шлюз анализирует результаты рекогносцировки и выбирает, какие стратегии охоты активировать — Flask-приложение с JWT-аутентификацией запускает других охотников, чем Go-микросервис с gRPC. Отдельный шлюз расширения CWE динамически расширяет список целевых уязвимостей на основе обнаруженного технологического стека. Шлюз достижимости оценивает, имеют ли уязвимости зависимостей эксплуатируемые пути вызова, прежде чем тратить ресурсы верификации на недостижимый код.

**6. Управляемая автономия для агентов кодирования**

SEC-AF работает поверх агентов кодирования (Claude Code, OpenCode, Codex) через обвязку AgentField. Вместо того чтобы давать агенту один массивный промпт, каждый рассуждатель предоставляет осведомлённую о фазе управляемую автономию: агент получает узкое определение задачи, плоскую схему вывода (2-4 поля) и контекст, специфичный для стратегии. В этих границах агент обладает полной автономией — может читать файлы, трассировать код и рассуждать свободно — но обвязка ограничивает _форму_ его вывода. Это предотвращает распространённый сбой, когда автономные агенты отклоняются от задачи или выдают неструктурированные результаты.

**7. Компонируемый DAG рассуждателей с полной наблюдаемостью**

Каждый вызов агента проходит через плоскость управления AgentField, создавая полный направленный ациклический граф аудита. Вы можете видеть, какой охотник нашёл какую находку, сколько времени заняла каждая верификация, какие доказательства сгенерировал проверяющий и где конвейер потратил время. Добавление нового класса уязвимостей — это один файл: новый охотник. Оркестратор обнаруживает его, направляет к нему контекст и интегрирует его находки в существующий конвейер дедупликации → доказательства → исправления. DAG — это и есть архитектура.

</details>

<details>
<summary><strong>Что было пропущено (и почему)</strong></summary>

9 пропущенных сценариев — это в первую очередь **атаки на уровне протокола GraphQL**: пакетные запросы, глубокая рекурсия, злоупотребление псевдонимами, дублирование полей, раскрытие introspection. Они требуют анализа во время выполнения/DAST. В настоящее время SEC-AF ориентирован на SAST. Обнаружение на уровне протокола находится в дорожной карте.

</details>

## Как это работает

SEC-AF построен на философии [Composite Intelligence](https://github.com/Agent-Field/agentfield): вместо того чтобы полагаться на один монолитный вызов LLM, он компонует множество целенаправленных управляемых вызовов LLM в **DAG рассуждателей**, где сама архитектура кодирует интеллект (для более глубокого погружения в этот паттерн см. [Атомарная единица интеллекта](https://www.santoshkumarradha.com/writing/atomic-unit-of-intelligence)). Каждый вызов LLM обрабатывает небольшую, чётко определённую задачу с плоской схемой Pydantic (2-4 атрибута). Оркестратор управляет потоком контекста, параллелизмом и динамической маршрутизацией.

### Архитектура: Граф вызовов рассуждателей (DAG)

Каждая фаза — это `@reasoner`, который вызывает под-рассуждателей через плоскость управления AgentField, в общей сложности около ~200-300 агентов, работающих синхронно для данного запроса:

<p align="center">
  <img src="https://assets.kitploit.com/production/public/readmes/7491/d3e99c5c9b7067b17005f71ecb0f7c7abeb9d7fc8843d33938de9f755f416b7b.png" alt="Конвейер сигнального каскада SEC-AF — RECON → HUNT → DEDUP → PROVE → OUTPUT" width="100%" />
</p>

### Конвейер сигнального каскада

Каждая фаза сужает сигнал. Сырые находки фильтруются через последовательно более строгие шлюзы:

| Фаза | Назначение | Параллелизм |
|---|---|---|
| **RECON** | Картографировать архитектуру, зависимости, потоки данных, контекст безопасности | 3-сторонний параллельный (архитектура + зависимости + конфигурация), затем 2-сторонний (поток данных + безопасность) |
| **HUNT** | Запустить 10+ специализированных охотников-стратегий | Параллельный с семафором (по умолчанию 4 одновременных) с инкрементальной дедупликацией |
| **PROVE** | Состязательная верификация: попытаться **опровергнуть** каждую находку | Параллельный с семафором (по умолчанию 3 одновременных) |
| **REMEDIATION** | Генерировать предложения по исправлению для подтверждённых/вероятных находок | Параллельный с семафором (по умолчанию 3 одновременных) |

### Почему многокрассуждательная архитектура

Большинство ИИ-инструментов безопасности запускают один большой промпт и надеются, что LLM сделает всё правильно. SEC-AF декомпозирует проблему на ~258 целенаправленных вызовов агентов, каждый с плоской схемой (2-4 поля) и узкой задачей. Архитектура кодирует стратегию рассуждения, а не промпт (см. [Атомарная единица интеллекта](https://www.santoshkumarradha.com/writing/atomic-unit-of-intelligence) для объяснения, почему это важно).

- **Множество фокусированных агентов > один мощный агент.** Один вызов LLM не может одновременно картировать архитектуру, трассировать потоки данных, охотиться за инъекциями, проверять эксплуатируемость и предлагать исправления. SEC-AF отдаёт каждую из этих задач отдельному рассуждателю, который делает одну вещь хорошо. Оркестратор занимается композицией, параллелизмом и маршрутизацией контекста.
- **Состязательная верификация, а не склонность к подтверждению.** Фаза PROVE запускает 4 под-агента на каждую находку с противоположными целями: трассировщик восстанавливает поток данных, анализатор санитизации ищет блоки, гипотезатор эксплойтов конструирует атаку, а агент вердикта взвешивает все доказательства. Это напряжение между агентами даёт более высокую уверенность, чем вопрос одной модели «эксплуатируемо ли это?»
- **Динамическая маршрутизация через ИИ-шлюзы.** Система адаптируется во время выполнения. ИИ-шлюз анализирует результаты рекогносцировки и выбирает, какие стратегии охоты активировать. Отдельный шлюз расширяет список целевых CWE на основе обнаруженного стека. Flask-приложение с JWT-аутентификацией получает других охотников, чем Go-микросервис с gRPC.
- **Прогрессивное сужение сигнала.** 106 сырых находок становятся 61 после дедупликации, затем 30 после состязательной верификации — снижение шума на 94%. Каждая фаза — это фильтр. Конвейер сжимает шум, а не просто обнаруживает уязвимости и сбрасывает их.
- **Информационная экономия.** Каждый агент видит только то, что ему нужно. Охотники получают контекст рекогносцировки, обрезанный под их стратегию. Верификаторы получают проекции находок с минимальным набором полей. Это уменьшает галлюцинации, снижает стоимость и держит каждый вызов LLM сфокусированным.
- **Инкрементальная потоковая передача.** Дедупликация работает как потребитель, пока охотники ещё производят находки. По завершении каждого охотника находки дедуплицируются по отпечатку, затем финальный семантический проход ловит межстратегические дубликаты. Конвейер работает в потоковом режиме, а не пакетами.

## Сравнение

> Заявления взяты из официальной документации и страниц с ценами. Если что-то неверно, [откройте issue](https://github.com/Agent-Field/sec-af/issues).

| | SEC-AF | Nullify | Snyk Code | Semgrep | CodeQL |
|---|---|---|---|---|---|
| **Подход** | **AI-native** | **AI-native** | **AI-assisted** | **Rule-based** | **Rule-based** |
| | Многокрассуждательный DAG · LLM рассуждает о коде | Автономная команда безопасности | Движок DeepCode AI | Сопоставление паттернов + примесей | Семантический анализ + потоки данных |
| **Открытый исходный код** | ✅ Apache 2.0 | ❌ Проприетарный | ❌ Проприетарный | Движок: LGPL-2.1 · Pro-правила: проприетарные | Запросы: MIT · Движок: проприетарный |
| **Проверенные находки** | ✅ Состязательная фаза PROVE · вердикт + доказательство на находку | ✅ Генерация доказательства эксплойта | ❌ Оценка приоритета (непрозрачная) · нет доказательства эксплойта | ❌ Только совпадения паттернов | ❌ Статические предупреждения анализа |
| **Доказательство на находку** | Трассировка потока данных с распространением меток | Путь эксплойта + шаги воспроизведения | Показан путь от источника к стоку | - | Путевые запросы показывают поток данных |
| **Архитектура** | Компонуемый DAG рассуждателей с полной наблюдаемостью | Монолитный агент | Однопроходный движок | Движок правил | Движок запросов |
| **Параллелизм** | ✅ Параллельные охотники, верификаторы, исправители с инкрементальной дедупликацией | Не задокументировано | Не задокументировано | ✅ Параллелизм правил | ✅ Параллелизм запросов |
| **Оценка** | ✅ Опубликованная композитная формула | Внутренняя | Непрозрачная оценка приоритета | Внутренняя | - |
| **SARIF** | ✅ Нативный 2.1.0 | Не задокументировано | ✅ | ✅ | ✅ Нативный |
| **Карты соответствия** | PCI-DSS, SOC2, OWASP, HIPAA, ISO27001 | Не задокументировано | Только платформа соответствия | Доступны правила OWASP | - |
| **Языки** | Любой язык, поддерживаемый LLM | Не задокументировано | 14+ | 35+ (на основе парсинга) | 10 |
| **Цена** | **Бесплатно · с открытым исходным кодом** (~$0.18–$0.90/аудит в расходах на LLM) | **$6,000/мес** | $25-105/мес/разработчик | OSS движок: бесплатно · Pro: $30/мес/контрибьютор | Бесплатно для публичных репозиториев · $49/мес/коммиттер (GHAS) |

**Где SEC-AF сильнее всего**: Проверенные находки с объектами доказательства, прозрачная оценка, карты соответствия, компонуемая многокрассуждательная архитектура с полной наблюдаемостью DAG и полностью открытый исходный код.

**Где другие сильнее**: Semgrep и CodeQL имеют многолетнее проверенное покрытие правилами для 35+ языков. Snyk имеет глубокую интеграцию с IDE/SCA. Nullify добавляет контекст облачного выполнения и автоматические кампании по исправлению. SEC-AF новее и в настоящее время сильнее всего в ИИ-управляемом анализе на уровне кода.

> **Та же архитектура, другой домен:** [Contract-AF](https://github.com/Agent-Field/contract-af) применяет состязательную HUNT→PROVE к юридическим контрактам — агенты порождают агентов для поиска взаимодействий между пунктами, которые одинокие LLM пропускают.

### Почему многокрассуждательная архитектура важна

Традиционные сканеры безопасности монолитны: один движок, один проход, один набор правил. Многокрассуждательная архитектура SEC-AF даёт структурные преимущества:

- **Специализация**: Каждый охотник — это управляемый LLM-специалист — охотник за инъекциями рассуждает иначе, чем охотник за криптографией. Архитектура кодирует предметные знания в маршрутизации, а не только в промптах.
- **Компонуемость**: Добавьте новый класс уязвимостей, добавив один файл охотника. Оркестратор обнаружит и запустит его автоматически. Никаких изменений в конвейере.
- **Состязательная верификация**: Фаза PROVE структурно отделена от HUNT. Охотники пытаются найти уязвимости; проверяющие пытаются их опровергнуть. Это состязательное напряжение уменьшает ложные срабатывания.
- **Наблюдаемость**: Каждый вызов рассуждателя проходит через плоскость управления, создавая полный DAG. Вы можете точно видеть, какой охотник нашёл какую находку, сколько времени заняла каждая фаза и что LLM рассуждал на каждом шаге.
- **Экономическая эффективность**: Обрезка контекста и представления схем означают, что каждый вызов LLM получает только необходимый контекст. Полный аудит стандартной глубины с 30 проверенными находками стоит примерно ~$0.18–$0.90 в вызовах LLM (Kimi K2.5 через OpenRouter).

## Быстрый старт

### Установка в AgentField (`af install`)

Уже запускаете плоскость управления [AgentField](https://github.com/Agent-Field/agentfield)? Установите SEC-AF прямо с GitHub — без клонирования, без локальной настройки:```bash
af install https://github.com/Agent-Field/sec-af
af run sec-af

af install клонирует репозиторий, настраивает изолированное Python-окружение и регистрирует узел sec-af в вашей панели управления. При первом запуске af run вам будет предложено ввести OPENROUTER_API_KEY — он хранится зашифрованным и используется повторно на всех узлах, так что вы вводите его только один раз. Затем запустите аудит:```bash af call sec-af.audit --in '{"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}'

root@kitploit:~
Новичок в AgentField? Сначала установите панель управления с помощью `curl -fsSL https://agentfield.ai/install.sh | bash`, или используйте параметры Docker / Railway ниже.

### Развёртывание в один клик (Railway)

[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/deploy/sec-af)

Развёртывает панель управления AgentField + агент SEC-AF. Вам понадобится `OPENROUTER_API_KEY`.

### Локальное (Docker Compose)```bash
git clone https://github.com/Agent-Field/sec-af.git && cd sec-af
cp .env.example .env          # Add OPENROUTER_API_KEY
docker compose up --build

Запускает плоскость управления AgentField (http://localhost:8080) + агент SEC-AF. Запустите аудит:```bash curl -X POST http://localhost:8080/api/v1/execute/async/sec-af.audit
-H "Content-Type: application/json"
-d '{"input": {"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}}'

root@kitploit:~
Запрос результатов:```bash
curl http://localhost:8080/api/v1/executions/<execution_id>

Запуск локально (без Docker)

Предварительные требования: Python 3.11+, Git, ключ API OpenRouter

Шаг 1 — Клонирование репозитория```bash git clone https://github.com/Agent-Field/sec-af.git cd sec-af

root@kitploit:~
**Шаг 2 — Создание и активация виртуального окружения**```bash
python3 -m venv .venv
source .venv/bin/activate

Шаг 3 — Установите пакет```bash pip install -e .

root@kitploit:~
**Шаг 4 — Настройка переменных окружения**```bash
cp .env.example .env

Откройте .env и введите ваш ключ:``` OPENROUTER_API_KEY=sk-or-...

root@kitploit:~
Опционально — укажите собственную рабочую директорию, чтобы избежать проблем с правами доступа:```
SEC_AF_WORKSPACES_DIR=~/.sec-af/workspaces

Шаг 5 — Запуск управляющей плоскости AgentField (в отдельном терминале)```bash af server

root@kitploit:~
По умолчанию запускается на `http://localhost:8080`.

**Шаг 6 — Запуск агента SEC-AF** (в другом терминале, с активным venv)```bash
python3 main.py

Агент регистрируется в плоскости управления и готов принимать запросы.

Шаг 7 — Запуск аудита```bash curl -X POST http://localhost:8080/api/v1/execute/async/sec-af.audit
-H "Content-Type: application/json"
-d '{"input": {"repo_url": "https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application"}}'

root@kitploit:~
## API

<details>
<summary><strong>Полные параметры запроса</strong></summary>```bash
curl -X POST http://localhost:8080/api/v1/execute/async/sec-af.audit \
  -H "Content-Type: application/json" \
  -d '{
    "input": {
      "repo_url": "https://github.com/org/repo",
      "branch": "main",
      "depth": "thorough",
      "severity_threshold": "high",
      "scan_types": ["sast", "sca", "secrets", "config"],
      "output_formats": ["sarif", "json", "markdown"],
      "compliance_frameworks": ["pci-dss", "soc2", "owasp", "hipaa"],
      "max_cost_usd": 15.0,
      "max_provers": 30,
      "max_duration_seconds": 1800,
      "include_paths": ["src/"],
      "exclude_paths": ["tests/", "vendor/"]
    }
  }'
Профили глубины
Модель вердиктов
ВердиктЗначение
Форматы вывода

GitHub Actions

Интеграция CI```yaml name: sec-af-audit on: pull_request:

jobs: security-audit: runs-on: ubuntu-latest permissions: contents: read security-events: write steps: - uses: actions/checkout@v4

root@kitploit:~
  - name: Trigger SEC-AF
    run: |
      RESPONSE=$(curl -sS -X POST "$AGENTFIELD_SERVER/api/v1/execute/async/sec-af.audit" \
        -H "Content-Type: application/json" \
        -d '{
          "input": {
            "repo_url": "${{ github.event.repository.clone_url }}",
            "branch": "${{ github.head_ref }}",
            "commit_sha": "${{ github.event.pull_request.head.sha }}",
            "base_commit_sha": "${{ github.event.pull_request.base.sha }}",
            "depth": "standard",
            "output_formats": ["sarif"]
          }
        }')
      echo "execution_id=$(echo "$RESPONSE" | jq -r '.execution_id')" >> "$GITHUB_ENV"
    env:
      AGENTFIELD_SERVER: ${{ secrets.AGENTFIELD_SERVER }}

  - name: Wait for results
    run: |
      for i in {1..60}; do
        RESULT=$(curl -sS "$AGENTFIELD_SERVER/api/v1/executions/$execution_id")
        STATUS=$(echo "$RESULT" | jq -r '.status')
        [ "$STATUS" = "succeeded" ] && { echo "$RESULT" | jq -r '.result.sarif' > results.sarif; exit 0; }
        [ "$STATUS" = "failed" ] && { echo "Audit failed"; exit 1; }
        sleep 10
      done
      echo "Timed out"; exit 1
    env:
      AGENTFIELD_SERVER: ${{ secrets.AGENTFIELD_SERVER }}

  - uses: github/codeql-action/upload-sarif@v3
    with:
      sarif_file: results.sarif
root@kitploit:~
</details>

## Конфигурация

<details>
<summary><strong>Переменные окружения</strong></summary>

| Переменная | Обязательно | По умолчанию | Описание |
|---|---|---|---|
| `AGENTFIELD_SERVER` | Да | `http://localhost:8080` | URL панели управления |
| `OPENROUTER_API_KEY` | Да | - | Учетные данные провайдера LLM |
| `HARNESS_MODEL` | Нет | `moonshotai/kimi-k2.5` | Модель для глубокого анализа `.harness()` |
| `AI_MODEL` | Нет | `moonshotai/kimi-k2.5` | Модель для быстрых проверок и вердиктов `.ai()` |
| `SEC_AF_MAX_TURNS` | Нет | `50` | Максимальное количество витков harness за вызов |
| `AGENTFIELD_API_KEY` | Нет | не задан | API-ключ для защищенных сред |
| `SEC_AF_WORKSPACES_DIR` | Нет | `/workspaces` | Директория для клонированных репозиториев (если недоступна для записи, используется `~/.sec-af/workspaces`) |
| `HARNESS_PROVIDER` | Нет | `opencode` | Бэкенд-провайдер harness |
| `SEC_AF_AI_MAX_RETRIES` | Нет | `3` | Количество повторных попыток вызова модели |

</details>

## Настройка разработки```bash
python -m venv .venv && source .venv/bin/activate
pip install -e .[dev]
pytest
ruff check src tests
Скачать инструмент
ПрофильСтратегииВерификацияТипичное времяТипичная стоимость
quick5 основных стратегийТолько топ результаты2-5 мин~$0.10-0.40
standard11 стратегий (основные + расширенные)Топ 30 результатов15-80 мин~$0.18-0.90
thoroughПолный набор стратегийВсе результаты30-120 мин~$2-8

Стоимость рассчитана на основе Kimi K2.5 через OpenRouter ($0.22/M вход, $0.88/M выход). Тест DVGA (стандартная глубина, 30 проверенных результатов, ~166-255 примерных вызовов LLM, 82 ребра DAG) обошлась примерно в $0.18–$0.90. Полный анализ: exampl/benchmark-analysis.json. Любая совместимая с OpenRouter модель работает — установите HARNESS_MODEL и AI_MODEL для переключения.

confirmed
Эксплуатируемость продемонстрирована с конкретными доказательствами
likelyСильные индикаторы, частичная верификация
inconclusiveНедостаточно доказательств, требуется ручная проверка
not_exploitableДоказательства указывают на отсутствие практического пути эксплуатации
ФорматПотребительОписание
sarifGitHub Code Scanning, средства безопасностиSARIF 2.1.0 с уровнем серьезности и местоположениями
jsonКонвейеры, APIПолный структурированный результат с вердиктами, доказательствами, стоимостью
markdownКоманды безопасностиПовествовательный отчет с результатами и рекомендациями по устранению

Также построено на AgentField

SWE-AF — Автономная инженерная команда. Один вызов API отправляет спланированный, закодированный, протестированный и проверенный код. Оценка 95/100.

Contract-AF — Анализатор рисков юридических контрактов. Агенты порождают агентов во время выполнения. Состязательная проверка выявляет то, что упускают одиночные LLM.

Все репозитории →


SEC-AF построен на AgentField — открытой инфраструктуре для промышленных автономных агентов. Посмотрите, что ещё мы создаём →

Apache-2.0