РАЗБОР
На проверке
ИИ-агенты для пентеста: автономные exploit-цепочки
[ обложка статьи ]
Режим чтения
Полтора года я встраиваю LLM в пентест-цепочки - от автогенерации payload'ов через OpenAI API до агентных связок, где модель сама решает, какой инструмент дёрнуть по ответу сервера. На одном проекте агент за ночь раскрутил SSRF до чтения S3-бакета. На другом - застрял в бесконечном цикле, перебирая SQL-инъекции в параметре, который принимал только UUID. Когда исследователи начали показывать, как LLM-агенты автономно находят SQL-инъекции в реальных приложениях, генерируют эксплойты и вытаскивают данные - с промптом уровня «найди уязвимость» - стало понятно: ИИ-агенты для пентеста из концепции превратились в рабочий инструмент. Ниже - как мультиагентные системы устроены внутри, где они реально ускоряют работу, а где гарантированно ломаются.
Зачем атакующему автономный ИИ-агент: бизнес-логика атаки
Прежде чем разбирать архитектуру - зачем злоумышленнику возиться с настройкой агентной цепочки, если можно запустить Nmap и Metasploit руками?Ответ - в масштабе. По данным xOffense (arxiv, 2025), в 2024 году опубликовано более 29 000 новых CVE - рост на 38% год к году. По IBM X-Force Threat Intelligence Index 2025, среднее время между публикацией CVE и устранением в организации - 29 месяцев. Между этими числами - окно эксплуатации, которое один пентестер физически не покроет. По Mandiant M-Trends 2025, эксплойты остаются доминирующим вектором initial access - 38% всех инцидентов. CrowdStrike Global Threat Report 2025 фиксирует удвоение вредоносного использования GenAI за 2024 год, а IBM X-Force отмечает: генерация фишинговых писем с GenAI в 11.4 раза быстрее ручной при сопоставимом качестве.
Автономный ИИ-агент закрывает три задачи, которые не решает ни сканер, ни ручной пентест по отдельности:
Масштаб без деградации. Агент параллельно обрабатывает сотни endpoint'ов. По заявлению Horizon3.ai (пересказ Astra Security, независимо не верифицировано), их платформа NodeZero оценила 3 600 хостов за три дня с покрытием 98% - против примерно 600 хостов при ручном пентесте за тот же срок.
Цепочки атак вместо изолированных находок. Сканер находит SSRF. Агент находит SSRF, проверяет доступ к метаданным облачного провайдера, вытаскивает временные IAM-creds и демонстрирует чтение приватного хранилища. Четыре находки средней критичности по отдельности - критическая цепочка вместе.
Непрерывность. Ручной пентест проводится раз в год. Агент запускается при каждом деплое. По данным Escape, автоматизация сокращает время тестирования до 90% от ручного цикла.
Для атакующего это тактика Resource Development. MITRE ATT&CK формализовал использование ИИ как технику T1588.007 (Artificial Intelligence). Разведка через запросы к публичным ИИ-сервисам зафиксирована как T1682 (Query Public AI Services, Reconnaissance). Инциденты с безопасностью ML-инфраструктуры - вредоносные модели и poisoned datasets в репозиториях вроде Hugging Face - подтверждают: атаки с использованием GPT и аналогичных моделей затрагивают уже не только классические веб-приложения. По OWASP LLM Top 10 2025, LLM04 (Data and Model Poisoning) описывает именно этот вектор - манипуляция обучающими данными для внедрения бэкдоров.
Архитектура мультиагентного пентеста: как LLM работает в связке с инструментами
Главное заблуждение - думать, что LLM в пентесте это «чат-бот, который подсказывает команды». Рабочие реализации устроены иначе. Исследование xOffense (arxiv, 2025) и архитектура Escape дают детальную картину мультиагентной системы для автоматизации пентеста ИИ.Координатор, специалисты, песочница
Координатор (orchestrator) не тестирует сам - только планирует и раздаёт задачи. В архитектуре Escape координатор явно ограничен: «You are a COORDINATION AGENT ONLY. You do NOT perform any security testing yourself.» Он анализирует scope, разбивает тестирование на задачи и направляет их специализированным агентам.Специализированные агенты отвечают за конкретные векторы или этапы:
| Агент | Функция | Типовые инструменты | Ограничения |
|---|---|---|---|
| Reconnaissance | Маппинг attack surface: домены, API, auth flows | subfinder, httpx, Nmap | Не выходит за scope без санкции координатора |
| Vulnerability Analysis | Корреляция находок с CVE/CWE базами | Nuclei, custom scripts | Зависит от актуальности баз сигнатур |
| Exploitation | Генерация и тестирование payload'ов | Metasploit, custom exploit code | Требует sandbox для безопасного исполнения |
| Validator | Подтверждение эксплуатируемости, фильтрация false positives | Headless browser, curl | Не оценивает бизнес-импакт |
В xOffense каждый агент работает на fine-tuned Qwen3-32B (32 миллиарда параметров), обученной на Chain-of-Thought пентест-данных. Модель генерирует точные команды инструментов и выполняет многошаговые рассуждения. В отличие от generic GPT-4o, domain-adapted модель реже «галлюцинирует» несуществующие флаги или модули. Разница ощутимая - примерно как между джуном, который гуглит каждый флаг
nmap, и мидлом, который помнит их наизусть.Песочница (sandboxed tools) - третий слой. Агенты не взаимодействуют с целью напрямую: они вызывают инструменты в изолированных контейнерах. DeteAct Avatar (российская реализация) запускает агентов в изолированных контейнерах с параллельным исполнением и полным журналом каждого запуска. Без песочницы агент с доступом к записи файлов или выполнению shell-команд рискует положить целевую систему.
Обмен разведданными: exploit chaining в автоматическом режиме
Агенты не работают в вакууме. Когда Reconnaissance Agent обнаруживает аутентифицированный API-endpoint, он сигнализирует Exploitation Agent проверить авторизацию - BOLA/IDOR (A01:2021, Broken Access Control по OWASP). Когда XSS Agent находит отражение пользовательского ввода, Validator Agent подтверждает эксплуатируемость. Escape описывает это как систему hooks: триггеры срабатывают при конкретных событиях.Этот механизм и отличает агентный подход от сканера. Сканер проверяет каждый параметр по сигнатурной базе. Агент строит гипотезу: «SSRF найден → проверить доступ к внутренним сервисам → попробовать прочитать облачные метаданные → проверить, дают ли полученные creds доступ к хранилищу». По заявлению XBOW (пересказ Astra Security, цифры независимо не верифицированы), платформа фиксирует выполнение 48-шаговых цепочек атак до remote code execution и 1 060 автономных атак за один engagement.
MITRE ATT&CK: LLM hacking получил собственные TTPs
MITRE формализовал использование искусственного интеллекта в кибербезопасности на стороне атакующих. Для пентестера это практически полезно: агентные цепочки маппятся на конкретные TTPs, и можно сразу проверять наличие detection rules у blue team.| Тактика | Техника | ID | Что делает агент |
|---|---|---|---|
| Resource Development | Artificial Intelligence | T1588.007 | Разработка или приобретение ИИ-возможностей для атак |
| Reconnaissance | Query Public AI Services | T1682 | Сбор информации о цели через публичные ИИ-сервисы |
| Reconnaissance | Vulnerability Scanning | T1595.002 | Автоматическое сканирование на уязвимости |
| Execution | Direct Prompt Injection | T1699 | Прямое внедрение промптов для управления LLM |
| Execution | Indirect Prompt Injection | T1698 | Косвенное внедрение промптов через контент |
| Discovery | Network Service Discovery | T1046 | Обнаружение сетевых сервисов и fingerprinting |
| Initial Access | Exploit Public-Facing Application | T1190 | Эксплуатация публично доступных приложений |
Prompt Injection (T1699, T1698) - отдельная история для AI red teaming. Когда агент атакует веб-приложение, использующее LLM (а таких всё больше), prompt injection превращается в полноценный вектор initial access. По OWASP LLM Top 10 2025, LLM06 (Excessive Agency) описывает ситуацию, когда LLM-приложение имеет избыточные полномочия и автономность - именно то, что эксплуатирует атакующий через инъекцию промпта.
xOffense: fine-tuned модель обходит GPT-4o в автоматизации пентеста ИИ
Исследование xOffense (arxiv, 2025) - один из самых показательных бенчмарков для оценки реальных возможностей автономных агентов для взлома. Авторы взяли open-source Qwen3-32B, дообучили её на Chain-of-Thought пентест-данных и запустили мультиагентную систему на двух бенчмарках: AutoPenBench и AI-Pentest-Benchmark.Результат: заявленный 79.17% sub-task completion rate (по данным препринта, требует независимой верификации) - значительно выше PentestGPT и VulnBot, работающих на GPT-4o и DeepSeek-V3.
Почему fine-tuned модель среднего размера побеждает? Три фактора.
Domain adaptation. GPT-4o - универсальная модель. Qwen3-32B после дообучения на пентест-данных точнее генерирует команды, не путает флаги
nmap и не подставляет несуществующие модули Metasploit. В xOffense это описано как переход от «black-box assistant» к «domain-adapted reasoning engine». На практике разница видна сразу: generic-модель может предложить nmap --vuln-scan (такого флага нет), а fine-tuned выдаст корректный nmap --script vuln.Grey-box промптинг. Агент получает частичную информацию о цели (версия ОС, открытые порты) - имитация реального пентеста. В отличие от CTF-подходов, где агент действует вслепую, grey-box схема сокращает количество бессмысленных попыток.
Стоимость. На длинной цепочке из 20-30 шагов разница в цене между API-вызовами GPT-4o и локально запущенной Qwen3-32B достигает порядков. Для регулярного тестирования это критично.
Ранняя работа PentestGPT (2023) показала, по данным вторичного источника (Astra Security), улучшение task-completion порядка 228% по сравнению с base GPT-3.5 (оригинальную метрику рекомендуется верифицировать по первоисточнику), но требовала постоянного присутствия человека. xOffense сдвигает границу - 79% задач закрываются без human-in-the-loop. Оставшиеся 21% - территория пентестера.
Где автономный AI agent exploit гарантированно провалится
Вендоры рисуют картину агента, который находит всё. Реальность грубее. Конкретные точки отказа, подтверждённые практикой:Галлюцинации эксплойтов
Команда Escape описала кейс: XSS-агент залогинился в браузерную консоль, выполнил скрипт самостоятельно и отрапортовал «XSS vulnerability found here!» Он подделал процесс верификации - галлюцинировал эксплойт, которого не существовало. Без независимого Validator Agent этот false positive ушёл бы в отчёт. По OWASP LLM Top 10 2025, LLM09 (Misinformation) описывает именно этот риск - модель генерирует ложную информацию, которая выглядит достоверной.Я видел похожее: агент нашёл «stored XSS» в поле, которое на самом деле экранировалось на бэкенде. Просто модель увидела отражение в DOM через DevTools и решила, что дело сделано.
Потеря контекста на длинных цепочках
Агент на GPT-4o стабильно работает 5-7 шагов. На 10+ шагах начинается деградация: повторные запросы к уже проверенным endpoint'ам, «забытые» найденные creds, зацикливание. Это отмечают и в h-x.technology: ИИ-системы «теряют контекст в длительных сессиях, особенно при эскалации привилегий и lateral movement». xOffense решает проблему через специализацию - каждый агент держит собственный контекст - но при сложных exploit chain'ах с privilege escalation деградация всё равно наступает.Бизнес-логика остаётся слепым пятном
Агент находит A03:2021 (Injection) и A05:2021 (Security Misconfiguration) по OWASP. А вот обход платёжных проверок, манипуляция скидками, race condition в бизнес-процессах - всё это требует понимания предметной области, которого у модели нет. Даже fine-tuned Qwen3-32B на 79.17% completion rate не понимает, что «применить скидку дважды» - уязвимость, если в обучающих данных не было такого паттерна. Тут без человека - никак.Excessive Agency: агент с избыточными полномочиями
По OWASP LLM06 (Excessive Agency), LLM с избыточной функциональностью и автономностью может причинить ущерб. Агент с доступом к деструктивным командам в production - не гипотетический сценарий. Песочница решает проблему частично, но граница между «проверить эксплуатируемость» и «причинить ущерб» при тестировании production-like окружений тонкая.| Точка отказа | Симптом | Mitigation |
|---|---|---|
| Галлюцинации | False positive PoC в отчёте | Независимый Validator Agent |
| Потеря контекста | Зацикливание после 10+ шагов | Специализация агентов, state management |
| Бизнес-логика | Пропуск логических уязвимостей | Human-in-the-loop на верификации |
| Excessive Agency | Деструктивные действия на цели | Sandbox, read-only режим, scope enforcement |
Практика: agent chain от recon до эксплуатации
Контрольные точки: после recon - проверить, не вышел ли агент за scope; после vuln analysis - отфильтровать false positives до exploitation; после exploitation - верифицировать PoC, оценить бизнес-импакт. Без этих checkpoint'ов агент превращается из инструмента пентестера в автономную угрозу - разница только в scope и authorization.
Мой опыт за полтора года сводится к одному наблюдению: агент ускоряет recon и первичную эксплуатацию в 3-5 раз, но на этапе privilege escalation и lateral movement экономия падает до нуля. Модель начинает галлюцинировать команды, терять контекст и предлагать действия, которые уже были выполнены. Fine-tuned модели вроде Qwen3-32B в xOffense частично решают проблему - 79.17% completion rate впечатляет - но «частично» тут ключевое слово. Оставшиеся 21% - нестандартные конфигурации, кастомные приложения, бизнес-логика. Там, где пентест превращается из ремесла в искусство.
Через год-два агенты дотянут до 85-90% на стандартных задачах. И именно оставшиеся 10-15% будут определять ценность пентестера на рынке. Большинство коллег, с которыми я обсуждаю эту тему, ещё не пробовали выстроить полноценную agent chain - и зря. Не потому что «ИИ заменит пентестера» (не заменит), а потому что понимание границ возможностей агента даёт конкурентное преимущество: ты знаешь, какие 80% работы отдать машине, и фокусируешься на тех 20%, где решает экспертиза. На HackerLab лежит сценарий, где этот primitive нужно собрать в полную цепочку - хороший способ проверить, где именно агентные обвязки ломаются на практике.
Содержание
Codeby Academy
Практика и мастерство
От основ до продвинутого — программы для практиков Codeby.
Перейти к курсу →
Продолжить чтение
Следующий разбор
Hack The Box экосистема: app, API и сообщество
Комментарии
0