Ты привык к старым добрым методам. Запустил nmap, получил список открытых портов. Пробежался по ним nikto, нашёл пару устаревших версий. Потыкал в админку burp suite, подобрал пару паролей. Потом, если повезло, залетел внутрь и начал долбить по внутренней сети. Всё это время ты сидишь за компом, пьёшь кофе, ждёшь, пока скрипты отработают, и принимаешь решения. Это классика. Это то, чему учили десять лет назад.
Но время идёт. Сканеры стали умнее? Не особо. Они по-прежнему работают по сигнатурам. Они умеют находить CVE, которые уже есть в базах, и пасуют перед тем, что не укладывается в шаблон. А хакеры, тем временем, не дремлют. Они строят многоступенчатые цепочки атак, используют легитимные инструменты, обходят сигнатурщиков через обфускацию. Классическая автоматизация перестаёт справляться.
И тут на сцену выходит Agentic AI. Не просто очередной сканер с модным названием, а попытка внедрить в пентест настоящую голову. Не просто скрипт, который долбит по списку, а автономный агент, который умеет думать, планировать, ошибаться и учиться. Он не заменяет nmap, он учится им пользоваться. Он не тупо запускает Metasploit, он анализирует результаты и решает, что делать дальше.
Краткая история автоматизации в пентесте
Чтобы понять, почему Agentic AI - это следующий логический шаг, нужно оглянуться назад и посмотреть, как эволюционировала автоматизация в нашей области.
- Эра ручного труда (1990-е - начало 2000-х). Пентестеры работали практически вручную. Основные инструменты - telnet, netcat, самописные скрипты на Perl. Каждая атака была уникальной, и успех зависел от опыта и интуиции человека. Это было медленно, дорого и не масштабировалось.
- Эра сигнатурных сканеров (2000-е - 2010-е). Появление Nessus, OpenVAS, Qualys. Эти инструменты автоматизировали поиск известных уязвимостей. Они стали стандартом индустрии. Но их ограничения быстро стали очевидны: они находили только то, что было в базах, и не понимали контекста.
- Эра фреймворков для эксплуатации (2010-е). Metasploit, Canvas, Core Impact. Теперь можно было не только находить, но и эксплуатировать уязвимости полуавтоматически. Появились готовые модули для тысяч CVE. Но по-прежнему требовалось ручное планирование и адаптация.
- Эра скриптов и автоматизации рутины (2015–2025). Nuclei, Nikto, Gobuster и тысячи других скриптов. Автоматизировались отдельные задачи: сканирование, перебор директорий, подбор паролей. CI/CD-пайплайны начали включать автоматические сканеры. Но это оставалось автоматизацией по шаблону, без интеллекта.
По данным исследования 2025 года, проведённого среди 500 пентестеров, 67% респондентов отметили, что тратят более половины своего времени на рутинные задачи, которые потенциально можно автоматизировать с помощью AI. При этом 82% считают, что AI-агенты в ближайшие 3-5 лет станут неотъемлемой частью их арсенала. Уже сейчас такие компании, как Cobalt и Synack, экспериментируют с AI-ассистентами для своих команд.
Но дело не только в экономии времени. Современные атаки стали слишком сложными для линейных скриптов. Возьмём, к примеру, атаки через цепочку поставок, где злоумышленник компрометирует не саму компанию, а её подрядчика. Или атаки на облачную инфраструктуру, где нужно учитывать множество взаимосвязей между сервисами. Сканеры тут бессильны - им не хватает контекста.
Ещё одна проблема - лавина ложных срабатываний. Средний отчёт Nessus содержит 30-40% ложных срабатываний. Аналитик тратит 2-3 часа на их фильтрацию. Агент, благодаря контекстному пониманию, может отсеять большинство из них ещё до того, как они попадут в отчёт.
Кроме того, хакеры активно используют AI для своих целей. Исследования показывают, что уже сейчас существуют AI-агенты, способные автономно проводить многошаговые атаки с успехом более 60%. Если защитники не будут использовать аналогичные инструменты, они окажутся в положении догоняющих.
В этой статье мы разберём:
- Что такое агент и из каких компонентов он состоит.
- Почему традиционные сканеры и скрипты уже не справляются.
- Чем агентный подход принципиально отличается от старой автоматизации.
- Как агент планирует и проводит атаку от разведки до пост-эксплуатации.
- Какие инструменты и фреймворки уже существуют в 2026 году.
- Какие плюсы и минусы у этого подхода.
- Как внедрять агентов в свои процессы, не ломая то, что уже работает.
Что вообще такое Agentic AI
Слово "агент" сейчас в моде. Но давай разберёмся, что это значит на самом деле. В контексте AI агент - это не просто языковая модель, которая отвечает на вопросы. Это система, которая обладает четырьмя ключевыми свойствами:- Восприятие (Perception). Агент умеет получать информацию из окружающей среды. В нашем случае - это может быть вывод сканера, содержимое веб-страницы, ответ от сервера, логи, конфигурационные файлы. Он видит то, что происходит. Восприятие может быть как текстовым (анализ логов), так и визуальным (скриншоты интерфейсов). Например, агент может "посмотреть" на веб-страницу и понять, какие там поля ввода, есть ли форма логина, используя библиотеки вроде BeautifulSoup или Selenium.
- Принятие решений (Decision Making). У него есть "мозг" (обычно LLM, дообученная на рассуждения), который на основе полученной информации решает, что делать дальше. Не по жёсткому алгоритму, а на основе логики и цели. Современные модели используют техники вроде Chain-of-Thought (цепочка рассуждений) или Tree-of-Thought (дерево рассуждений), чтобы перебирать варианты и выбирать лучший. Например, агент может рассуждать: "Если порт 80 открыт, то вероятно там веб-сервер. Попробую сначала получить заголовки через curl, а если это WordPress, то запущу wpscan". Это уже не просто условный оператор, а полноценное планирование.
- Действие (Action). Агент умеет воздействовать на среду. Он может запустить сканер, отправить HTTP-запрос, выполнить шелл-команду, написать код эксплойта. У него есть "руки" - набор инструментов, которыми он умеет пользоваться. Каждый инструмент - это функция с описанием, что она делает, и агент вызывает её при необходимости. Инструменты могут быть как внешними (nmap, hydra), так и внутренними (написание скрипта на Python). Важно, что агент должен уметь интерпретировать результаты выполнения инструментов и принимать следующие решения на их основе.
- Автономность (Autonomy). Агент работает без постоянного вмешательства человека. Ему ставят задачу ("найди способ проникнуть во внутреннюю сеть"), и он сам планирует и выполняет шаги, корректируя план по ходу дела. При этом может запрашивать подтверждение у человека для критических действий (например, запуск эксплойта, который может нарушить работу сервиса). Автономность бывает разной: от полной (агент сам решает всё) до полуавтономной (агент советует, человек утверждает).
Важно понимать: агент - не замена существующим инструментам. Он их оркестратор. Он умеет вызывать nmap, анализировать его вывод, решать, что делать дальше - может, запустить nikto, может, попробовать прямой эксплойт. Это как если бы у тебя был помощник, который знает все команды, но ещё и думает головой.
Дополнительные аспекты:
- Рефлексия (Reflection). Некоторые агенты умеют анализировать свои неудачи. Например, если попытка эксплуатации не удалась, агент может вернуться назад, пересмотреть свои предположения и попробовать другой путь. Это уже похоже на обучение на собственном опыте. В современных фреймворках это реализуется через механизм "self-critique", где агент после каждого шага оценивает успешность и при необходимости корректирует план.
- Мультиагентность. В сложных сценариях может использоваться несколько агентов, специализирующихся на разных задачах. Один занимается разведкой, второй - эксплуатацией, третий - анализом. Они общаются друг с другом через общую память или оркестратор. Например, агент-разведчик находит SQL-инъекцию, передаёт информацию агенту-эксплуататору, тот пробует получить данные, а агент-аналитик оценивает критичность. Такая архитектура повышает надёжность и позволяет распараллеливать задачи.
- Адаптивное обучение. Некоторые системы используют reinforcement learning, чтобы агенты учились на своих ошибках и со временем становились эффективнее. Например, можно создать симулятор сети, где агенты тренируются, а затем переносить их в реальные условия.
- Интеграция с базами знаний. Агенты могут обращаться к внешним источникам (exploit-db, CVE databases, Stack Overflow) для получения дополнительной информации. Например, если агент нашёл странную ошибку, он может поискать в интернете, сталкивался ли кто-то с подобным.
Традиционные методы - сканеры и скрипты
Давай честно: мы любим старые добрые инструменты. Они надёжные, быстрые и понятные. Но у них есть фундаментальные ограничения, которые в современном мире становятся критическими.Что умеют сканеры (Nessus, OpenVAS, Qualys): Они отлично находят известные уязвимости. У них есть база сигнатур, они проверяют версии сервисов, конфигурации, слабые пароли. Это как большой справочник с картинками: если у тебя Apache 2.4.49, они скажут "критично, надо обновить". Но они не знают контекста. Они не понимают, что этот Apache стоит на изолированном сервере без выхода в интернет, и что реальная угроза не в нём, а в соседнем PHP-скрипте, который сливает пароли. Nessus может выдать 10 критических уязвимостей на тестовом сервере, которые на самом деле не представляют угрозы, потому что сервер не имеет доступа к внешней сети.
Что умеют скрипты (Nuclei, Metasploit, кастомные баш-скрипты): Они автоматизируют рутину. Написать скрипт, который пробежится по списку хостов и проверит наличие CVE-2025-1234 - дело пяти минут. Но они тупые. Они делают ровно то, что им сказали, и останавливаются, когда натыкаются на неожиданность. Они не могут скорректировать план, если что-то пошло не так. Например, скрипт, написанный для эксплуатации уязвимости в WordPress, не сможет адаптироваться, если версия WordPress окажется чуть новее и уязвимость слегка изменилась.
Проблемы традиционного подхода:
- Отсутствие контекста. Сканер видит открытый порт, но не понимает, что за ним - критическая база данных или тестовая песочница. Он выдаст одинаковый риск, хотя на деле угроза разная. Более того, сканер не учитывает бизнес-логику приложения. Он может найти SQL-инъекцию в форме, но не поймёт, что эта форма ведёт к таблице с паролями администраторов. В реальном пентесте это понимает человек, а сканер - нет.
- Неспособность к многошаговым атакам. Настоящий хакер никогда не идёт прямо. Он сначала разведывает, потом находит зацепку, потом использует её для латерального движения. Сканеры на это не способны. Они проверяют каждый хост изолированно. Например, хакер может сначала взломать форум сотрудников, через него получить доступ к внутренней сети, а потом атаковать базу данных. Сканер такую цепочку не выявит. Он увидит только отдельные элементы, но не свяжет их воедино.
- Слепая вера в CVSS. Цифра 10.0 выглядит страшно, но на практике уязвимость может быть неэксплуатируема в вашей конфигурации. А низкий CVSS может скрывать реальную опасность в связке с другими факторами. Например, уязвимость с CVSS 4.0 может стать критической, если она сочетается с возможностью поднять привилегии через локальный эксплойт. Сканеры этого не учитывают.
- Шум и ложные срабатывания. Сканеры часто орут на каждую мелочь, заставляя аналитиков тонуть в море ложных тревог. Анализ отчёта сканера может занимать часы, и реальные проблемы теряются в куче мусора. По данным исследования 2025 года, в среднем отчёт Nessus содержит 30-40% ложных срабатываний. Аналитик тратит 2-3 часа на их фильтрацию.
- Отсутствие креативности. Хакер может придумать нестандартный вектор атаки, который не описан ни в одной базе. Сканер на это не способен. Он действует по шаблону. Например, атака через логическую ошибку в бизнес-логике приложения (например, возможность купить товар по отрицательной цене) не будет найдена ни одним сканером, потому что это не техническая уязвимость, а ошибка проектирования.
- Неспособность к обучению. Сканеры статичны. Они не учатся на предыдущих сканированиях. Если новая уязвимость появилась, нужно ждать обновления базы сигнатур. Агент же может сам найти информацию о новой уязвимости в интернете и попробовать её применить.
Agentic AI Pen Testing - определение и ключевые отличия
Итак, что же такое Agentic AI Pen Testing? Это подход, при котором AI-агенты автономно или полуавтономно проводят пентест, имитируя действия реального хакера. Они не просто сканируют, а охотятся. У них есть цель, и они к ней стремятся, адаптируясь по пути.Ключевые отличия от традиционных скриптов:
- Наличие цели. Сканеру ты говоришь: "просканируй эти порты". Агенту ты говоришь: "найди способ проникнуть во внутреннюю сеть". Разница колоссальная. Сканер выполнит команду и отчитается. Агент будет сам строить стратегию: начать с внешнего периметра, найти точку входа, закрепиться, двигаться дальше. Цель может быть высокоуровневой: "получить доступ к базе данных клиентов" или "скомпрометировать домен-контроллер". Агент будет разбивать эту цель на подцели и последовательно их достигать.
- Планирование и адаптация. Агент умеет строить план и менять его на лету. Наткнулся на закрытый порт - не беда, попробует другой вектор. Увидел, что стандартный эксплойт не срабатывает - может модифицировать его или поискать альтернативу. Это не жёсткий сценарий, а живая логика. Для планирования часто используются техники вроде ReAct (Reasoning + Acting), где агент по очереди рассуждает, действует и наблюдает результат. Например, агент может рассуждать: "Порт 80 открыт, но я не вижу стандартного ответа веб-сервера. Возможно, это нестандартный порт для другого сервиса. Попробую подключиться через netcat и посмотреть баннер". Это уже не просто вызов сканера, а анализ ситуации.
- Использование инструментов. Агент не заменяет nmap или Metasploit. Он учится ими пользоваться, как человек. Он знает, какие флаги передать, как интерпретировать вывод, что делать дальше. Инструменты становятся его руками. В современных системах инструменты описаны в формате JSON или функции, и агент может их вызывать через API. Например, инструмент "nmap_scan" принимает параметры target и ports, а возвращает структурированный список открытых портов. Агент вызывает его, получает результат и решает, что делать дальше.
- Контекстное понимание. Агент помнит всю историю атаки. Он знает, что уже пробовал, что сработало, что нет. Он связывает факты: например, открытый порт 3306 (MySQL) на одном сервере и наличие веб-приложения на другом могут привести к мысли о возможности SQL-инъекции через веб. Память может быть реализована как векторная база, куда складываются эмбеддинги событий. Это позволяет агенту находить связи между разрозненными фактами, которые человек мог бы упустить.
- Рассуждение (reasoning). Современные LLM, особенно Reasoning Models (DeepSeek-R1, o1, Grok 3), умеют строить логические цепочки. Они не просто генерируют текст, они думают. Это позволяет им решать задачи, которые требуют нешаблонного подхода. Например, они могут понять, что если на сайте есть форма поиска, и она возвращает ошибки SQL, то можно попробовать инъекцию. Но они также могут понять, что если сайт использует NoSQL, то нужно пробовать другие типы инъекций.
- Многошаговость. Агент может проводить сложные цепочки атак: от разведки до эксплуатации и пост-эксплуатации. Это уже полноценная эмуляция APT. Пример: агент сначала взламывает веб-сервер через SQL-инъекцию, затем загружает шелл, затем использует этот шелл для сканирования внутренней сети, находит уязвимый сервер с базой данных и через него получает доступ к критическим данным. Такая цепочка может состоять из десятков шагов.
- Объяснимость. Агент может объяснить свои действия: почему он выбрал именно этот вектор, что он ожидал получить, что получил на самом деле. Это помогает пентестеру валидировать результаты и учиться на его действиях. Например, агент может выдать отчёт: "Я попробовал SQL-инъекцию в форме поиска, потому что она возвращала ошибки. Получил доступ к таблице пользователей. Затем использовал найденные пароли для входа в SSH. На сервере нашёл конфигурационный файл с паролем от базы данных".
Архитектура Agentic Pentester - как это устроено изнутри
Чтобы агент мог работать, ему нужна определённая архитектура. Рассмотрим её на примере современных фреймворков, таких как Co-RedTeam, AutoGPT и специализированных разработок.- LLM-ядро (мозг). Это основная модель, которая отвечает за рассуждения и планирование. Обычно это мощная LLM, дообученная на задачах, связанных с безопасностью. В 2026 году активно используются Reasoning Models (DeepSeek-R1, Grok 3, o1). Они умеют не просто генерировать текст, а прокручивать в голове цепочки рассуждений, проверять гипотезы. Важно, что модель должна поддерживать работу с инструментами (function calling). Многие LLM провайдеры (OpenAI, Anthropic) предоставляют такую возможность. Кроме того, могут использоваться специализированные модели, обученные на данных пентестов (например, PentestGPT).
- Инструментарий (руки). Агент должен уметь взаимодействовать с реальным миром. Для этого ему дают доступ к инструментам. Каждый инструмент описывается в виде функции с именем, описанием и параметрами. Агент может вызвать её, передав нужные аргументы. Результат возвращается в виде текста или структурированных данных. Примеры инструментов:
- Сетевые сканеры: nmap, masscan (обёрнутые в API). Например, функция nmap_scan(target, ports) возвращает JSON со списком открытых портов.
- Фреймворки для эксплуатации: Metasploit (через msfrpc), Empire. Агент может запустить эксплойт с нужными параметрами и получить результат.
- Брутфорсеры: hydra, john (интегрированные через шелл). Агент может запустить подбор паролей и проанализировать результаты.
- Анализаторы веб-приложений: nuclei, burp suite (через API), owasp zap. Агент может запустить сканирование и получить список уязвимостей.
- Системные команды: ssh, curl, sqlmap, python (для выполнения кастомных скриптов). Например, агент может подключиться по SSH к скомпрометированному серверу и выполнить команды.
- Браузер для навигации по веб-страницам (selenium, playwright) - агент может "кликать" по ссылкам, заполнять формы, имитируя поведение пользователя.
- Поисковые системы (Google, Shodan) - для сбора информации об IP, доменах, открытых портах.
- Базы уязвимостей (exploit-db, CVE) - для поиска информации о конкретных уязвимостях.
- Каждый инструмент обёрнут в API, понятный агенту. Он знает, какие параметры принимает функция, и умеет вызывать её. Результат возвращается в виде текста или структурированных данных.
- Память. Агенту нужно помнить, что он уже сделал, и какие факты обнаружил. Для этого используется краткосрочная память (в рамках текущей сессии) и долгосрочная (хранилище результатов, профили хостов, найденные уязвимости). Память может быть реализована как векторная база данных (например, Chroma, Pinecone), куда складываются эмбеддинги событий. Это позволяет агенту быстро находить релевантную информацию из прошлых шагов. Например, если агент уже встречал подобный сервис, он может вспомнить, какие уязвимости он использовал тогда.
- Оркестратор. Если агентов несколько, нужен компонент, который распределяет задачи и собирает результаты. Например, один агент занимается разведкой, другой - эксплуатацией, третий - пост-эксплуатацией. Оркестратор управляет их коммуникацией и общей стратегией. Он также может объединять результаты от разных агентов и строить общую картину. В мультиагентных системах часто используется шаблон "master-slave" или "peer-to-peer".
- Интерфейс взаимодействия с человеком. Агент должен уметь отдавать отчёты, запрашивать разрешение на опасные действия, объяснять свои решения. Обычно это чат-интерфейс, где пентестер может давать указания и получать результаты. Например, агент может написать: "Я нашёл потенциальную SQL-инъекцию в форме на сайте. Разрешите запустить sqlmap для дампа базы?". Пентестер может одобрить, отклонить или дать дополнительные инструкции.
- Механизм планирования. Современные агенты используют различные стратегии планирования:
- ReAct (Reasoning + Acting). Цикл: рассуждение (что я знаю, что мне нужно сделать) -> действие (вызов инструмента) -> наблюдение (анализ результата) -> повтор. Это базовый цикл для большинства агентов.
- Tree-of-Thoughts (ToT). Агент рассматривает несколько возможных путей атаки параллельно, оценивает их перспективность и выбирает лучший. Например, если есть несколько открытых портов, агент может параллельно исследовать их и выбрать тот, который даёт быстрый результат.
- Monte Carlo Tree Search (MCTS). Используется для планирования в сложных пространствах действий. Агент симулирует возможные шаги и выбирает оптимальную последовательность. Это особенно полезно для многошаговых атак с большим количеством вариантов.
- Оценка риска и приоритезация. Агент должен уметь оценивать, какие действия наиболее важны, и не тратить время на бесполезные попытки. Например, если порт 80 открыт, а 443 закрыт, то сначала стоит проверить веб, а потом уже искать другие векторы. Агент может использовать эвристики: "если порт 3306 открыт, это потенциальная база данных, стоит проверить на слабые пароли".
- Обработка ошибок и восстановление. Агент должен уметь обрабатывать неожиданные ошибки (например, сетевые таймауты, недоступность инструментов) и восстанавливаться после них. Если инструмент не отвечает, агент может подождать и повторить попытку или переключиться на другой инструмент.
- Безопасность агента. Сам агент может стать целью атак. Важно защитить его от вредоносных входных данных, которые могут заставить его выполнить нежелательные действия. Используются техники изоляции, sandboxing, валидации промптов.
Чем Agentic AI отличается от традиционных сканеров
Давай разложим по полочкам, чем же агент лучше (и хуже) привычных сканеров. Это поможет понять, когда какой подход применять.- Цель. Сканер ищет известные уязвимости (CVE, слабые пароли, неправильные конфигурации). Агент стремится достичь конкретной бизнес-цели: "получить доступ к базе данных клиентов" или "скомпрометировать домен-контроллер". Это кардинально меняет подход. Агент не просто выводит список проблем, а показывает реальный путь атаки. Результат его работы - не список CVE, а описание вектора атаки и демонстрация возможности проникновения. Для бизнеса это гораздо ценнее, потому что показывает реальные риски.
- Подход. Сканер работает сигнатурно или эвристически: есть база шаблонов, он ищет совпадения. Агент работает целевым образом: он имитирует поведение хакера. Он может сам придумать способ атаки, который не описан в базах. Например, он может заметить, что на сайте используется старая версия библиотеки, и найти в интернете информацию об уязвимости, которой нет в базах сканера. Или он может проанализировать JavaScript-код на странице и найти там скрытые эндпоинты.
- Адаптивность. Сканер делает то, что ему сказали, и останавливается при ошибке. Агент адаптируется. Если порт 80 закрыт, он попробует 443. Если стандартный эксплойт не сработал, он попробует модифицировать его или переключится на другой вектор. Сканер просто выдаст ошибку и перейдёт к следующему пункту. Агент может также адаптироваться к защитным механизмам: если он видит, что сайт защищён WAF, он может попробовать обфусцировать запросы.
- Сложность атак. Сканеры выполняют одношаговые проверки: проверить версию, проверить пароль по списку. Агенты строят многошаговые цепочки: разведка -> поиск зацепки -> эксплуатация -> латеральное движение -> повышение привилегий. Это уже полноценная эмуляция APT. Например, агент может сначала взломать веб-сервер, потом через него проникнуть во внутреннюю сеть и атаковать базу данных. Такая цепочка может состоять из десятков шагов, и каждый шаг зависит от предыдущего.
- Отчётность. Сканер выдаёт список CVE с CVSS-скорами. Агент выдаёт описание вектора атаки, включая все шаги, и показывает бизнес-риск: "вот эта цепочка уязвимостей позволяет злоумышленнику украсть все данные клиентов". Такой отчёт понятен даже директору. Агент также может предоставить логи своих действий, чтобы пентестер мог перепроверить. Кроме того, агент может дать рекомендации по устранению каждой уязвимости в порядке критичности.
- Скорость. Сканер быстр для известных проблем: пробежаться по списку IP с nuclei - дело минут. Агент медленнее, потому что ему нужно думать и планировать. Но он находит то, что сканеры пропускают. В идеале они должны работать в связке: быстрый сканер для первого прохода, агент для глубокого анализа наиболее критичных узлов. Например, сканер может найти 100 потенциальных проблем, а агент потратит час на анализ 10 самых важных из них.
- Стоимость. Запустить сканер можно бесплатно или за небольшие деньги. Агент требует мощных вычислительных ресурсов (GPU для LLM) и времени. Запросы к коммерческим LLM (GPT-4, Claude) могут стоить денег. Но если он предотвращает один серьёзный инцидент, окупается сторицей. Например, стоимость утечки данных в среднем составляет несколько миллионов долларов, а стоимость работы агента - сотни долларов.
- Точность. Сканеры страдают от ложных срабатываний. Агент, благодаря контексту, может отсеивать многие ложные срабатывания. Например, он может проверить, действительно ли уязвимость эксплуатируема в данной конфигурации, а не просто наличие версии. Если сканер говорит, что Apache уязвим, агент может попробовать реальный эксплойт и убедиться, что он срабатывает.
- Обучение. Сканеры не обучаются. Агенты могут использовать опыт прошлых атак для улучшения своих стратегий. Например, если агент однажды нашёл способ обойти WAF, он запомнит это и будет пробовать в следующих тестах. Можно также дообучать агента на данных из реальных пентестов.
- Прозрачность. Сканеры часто работают как чёрный ящик: непонятно, почему они выдали ту или иную оценку. Агент может объяснить свои рассуждения, что повышает доверие к результатам. Например, он может сказать: "Я решил попробовать SQL-инъекцию, потому что форма возвращала ошибку при вводе кавычки. Это типичный признак уязвимости".
- Креативность. Сканеры действуют по шаблону. Агенты могут придумывать нестандартные атаки, например, комбинировать несколько уязвимостей, которые по отдельности не представляют угрозы. Это особенно важно для поиска уязвимостей нулевого дня.
- Масштабируемость. Сканеры легко масштабировать: запустил на 1000 хостов, и они все проверятся. Агентов сложнее масштабировать, потому что каждый агент требует ресурсов. Но можно запустить несколько агентов параллельно на разных целях.
Примеры работы - от разведки до эксплуатации
Давай представим типичный сценарий, чтобы понять, как это работает вживую. Возьмём вымышленную компанию с типовой инфраструктурой: веб-сайт, несколько серверов, внутренняя сеть.Задача: найти способ проникнуть во внутреннюю сеть компании и получить доступ к базе данных клиентов.
Фаза 1: Разведка (Reconnaissance). Агент начинает с внешнего периметра. Он запускает инструменты для сбора информации:
- whois для получения данных о владельце домена.
- dnsrecon для поиска поддоменов (
Ссылка скрыта от гостей,Ссылка скрыта от гостей,Ссылка скрыта от гостей).
- theHarvester для поиска email-адресов сотрудников.
- поиск в Shodan и Censys по IP-диапазону компании.
Ссылка скрыта от гостей
(похоже на тестовую среду) и
Ссылка скрыта от гостей
(панель администратора). Решает начать с
Ссылка скрыта от гостей
.Фаза 2: Анализ веб-приложения. Агент запускает whatweb, чтобы определить технологии на
Ссылка скрыта от гостей
: Apache 2.4.49, PHP 7.4, WordPress 5.8. Проверяет по базе уязвимостей - Apache 2.4.49 имеет критическую уязвимость CVE-2021-41773 (path traversal), но она требует, чтобы модуль mod_cgi был включён. Агент решает проверить, включён ли он. Для этого он пытается отправить запрос с путём /cgi-bin/. Если сервер вернёт 403 или 404, значит, модуль включён, и уязвимость может сработать. Агент делает запрос через curl и получает 403. Это хороший признак. Он пробует эксплойт из Metasploit, но он не срабатывает. Агент решает поискать информацию о других уязвимостях WordPress.Фаза 3: Поиск зацепки. Агент замечает, что на сайте есть форма поиска. Он решает проверить её на SQL-инъекцию. Использует технику: вводит одинарную кавычку и смотрит на ответ. Сервер возвращает ошибку SQL. Агент понимает, что форма уязвима. Теперь ему нужно решить, что делать: либо пробовать ручные инъекции, либо запускать sqlmap. Он выбирает sqlmap, так как это быстрее. Запускает sqlmap с параметрами, указывая форму и метод POST. sqlmap подтверждает наличие инъекции и предлагает дамп базы. Агент разрешает дамп. Получает таблицу пользователей с хешами паролей.
Фаза 4: Эксплуатация. Полученные хеши нужно расшифровать. Агент пробует простые словари, но безуспешно. Тогда он решает использовать john с правилами мутации. Через некоторое время один пароль поддаётся - "admin123". Теперь у агента есть учётка для входа в админку WordPress. Он заходит в админку и видит, что там есть редактор тем. Создаёт новую тему с PHP-кодом, который выполняет команды. Получает доступ к шеллу на сервере. Теперь он внутри сети. Запускает id, pwd, ls, чтобы понять, где находится.
Фаза 5: Латеральное движение. Агент начинает исследовать внутреннюю сеть. Запускает ipconfig, чтобы узнать IP и подсеть. Видит, что сервер имеет IP 192.168.1.10, маска 255.255.255.0. Он решает просканировать подсеть с помощью встроенного nmap (или загружает статический бинарник). Сканирование показывает несколько активных хостов: 192.168.1.20 (открыт 80), 192.168.1.30 (открыт 3389), 192.168.1.40 (открыт 3306). Агент предполагает, что 192.168.1.40 - это база данных MySQL. Пытается подключиться к ней с помощью mysql, используя учётные данные, найденные ранее. Успешно. Он получает доступ к базе данных клиентов. Цель достигнута.
Фаза 6: Пост-эксплуатация и закрепление. Агент не останавливается. Он пытается повысить привилегии на первоначальном сервере. Проверяет sudo -l, видит, что может выполнять некоторые команды от root. Использует это, чтобы получить полный root-доступ. Затем ищет файлы конфигурации, пароли, ключи SSH. Находит закрытый ключ SSH для подключения к другим серверам. Использует его для доступа к 192.168.1.20, где также находит интересные данные. Агент продолжает исследовать сеть, пока не получает полную картину.
Фаза 7: Отчёт. Агент создаёт отчёт: описывает все шаги, прикладывает логи, указывает найденные уязвимости (SQL-инъекция, слабые пароли, недостаточная сегментация сети, возможность повышения привилегий). Показывает бизнес-риск: возможность кражи всех данных клиентов, компрометация внутренней сети, доступ к критическим системам. Отправляет отчёт пентестеру. Отчёт включает также рекомендации по исправлению: обновить WordPress, использовать параметризованные запросы, ограничить доступ к SSH по ключам, сегментировать сеть.
Все эти шаги агент выполняет автономно, без участия человека. На каждом этапе он принимает решение на основе предыдущих результатов. Это не скрипт, это настоящая охота.
Инструменты и фреймворки 2026 года
К 2026 году появилось несколько интересных разработок, которые позволяют строить таких агентов. Вот основные из них:- Co-RedTeam. Мультиагентный фреймворк, разработанный исследователями из нескольких университетов (опубликован на arXiv в начале 2026). В нём несколько специализированных агентов (планировщик, исполнитель, анализатор) взаимодействуют друг с другом для проведения пентеста. Планировщик определяет стратегию, исполнитель запускает инструменты, анализатор оценивает результаты. Они обмениваются информацией через общую память. Фреймворк показал более 60% успеха в эксплуатации уязвимостей на тестовых стендах и улучшил обнаружение уязвимостей более чем на 10% по сравнению с существующими подходами. Код частично открыт, есть API для интеграции.
- Agentic Radar от SplxAI. Специализированный инструмент для тестирования агентных систем. Он атакует AI-агентов, чтобы проверить, можно ли их заставить выполнить вредоносные действия. Например, заманить корпоративного бота на фишинговую страницу и заставить его прочитать вредоносную инструкцию. Это уже следующий уровень: агенты атакуют агентов. Включает в себя библиотеки для эмуляции различных сценариев, а также дашборд для визуализации результатов. Используется для защиты AI-приложений.
- PentestGPT и его эволюция. Изначально это была обёртка над ChatGPT для помощи пентестерам. К 2026 году появились версии, которые могут выполнять команды напрямую, интегрироваться с инструментами и даже писать простые эксплойты. Есть open-source аналоги, которые можно дообучать под свои задачи (например, на базе Llama или Mistral). Например, проект "PentestAgent" на GitHub позволяет создать агента, который использует nmap, hydra и Metasploit.
- Использование Reasoning Models (DeepSeek-R1, Grok 3, o1). Исследования показали, что модели, специально обученные на задачах рассуждения, отлично справляются с планированием атак. Они могут строить логические цепочки из десятков шагов, учитывая множество факторов. В сочетании с доступом к инструментам они превращаются в опасных противников (или мощных помощников). Например, DeepSeek-R1 в экспериментах показал способность автономно проводить сложные многошаговые атаки, обходя защитные механизмы, такие как WAF.
- AutoGPT и BabyAGI-форки. Хотя эти проекты появились раньше, их концепции (автономные агенты с долгосрочной памятью) легли в основу многих пентест-фреймворков. Разработчики адаптировали их, добавив специализированные инструменты и датасеты. Например, существуют форки AutoGPT с предустановленным набором хакерских инструментов и промптами для пентеста.
- SkillJect. Хотя это фреймворк для атак на агентов, его можно использовать и для защиты: тестировать свои агенты на уязвимости к инъекциям. Он автоматически генерирует вредоносные промпты, которые пытаются заставить агента выполнить опасные действия. Это помогает выявить слабые места в архитектуре агента.
- Microsoft Security Copilot. Коммерческое решение от Microsoft, которое интегрирует AI в процессы SOC и пентеста. Оно может помогать аналитикам, предлагать сценарии, автоматизировать рутинные задачи. Хотя оно не полностью автономно, это шаг в том же направлении. Например, Security Copilot может анализировать логи, предлагать гипотезы и рекомендовать следующие шаги.
- Google's Project Naptime. Исследовательский проект Google, направленный на создание агентов для автоматизации поиска уязвимостей в коде. Они используют LLM для анализа исходного кода и поиска потенциальных багов. Агенты могут читать код, отслеживать потоки данных, находить уязвимые функции. Проект показал хорошие результаты на реальных кодовых базах.
- Meta's Purple Llama. Инициатива Meta по созданию открытых инструментов для безопасности LLM, включая тестирование агентов. В рамках этой инициативы выпущены наборы данных и бенчмарки для оценки устойчивости агентов к атакам.
Плюсы и минусы подхода
Как у любого инструмента, у Agentic AI есть свои сильные и слабые стороны. Важно их понимать, чтобы правильно использовать.Плюсы:
- Глубина анализа. Агент способен находить сложные цепочки уязвимостей, которые пропустят десятки сканеров. Он может связывать разрозненные факты и строить атаки, требующие творческого подхода. Например, он может обнаружить, что комбинация слабого пароля на одном сервере и уязвимости в веб-приложении на другом позволяет проникнуть в систему.
- Снижение нагрузки на человека. Агент берёт на себя рутину и даже часть аналитики, оставляя пентестеру стратегическое управление. Вместо того чтобы вручную перебирать варианты, пентестер может сосредоточиться на сложных задачах, таких как анализ бизнес-логики или разработка нестандартных эксплойтов.
- Масштабирование экспертизы. Один опытный пентестер может контролировать целый рой агентов, которые параллельно тестируют разные системы или разные векторы атак. Это позволяет проводить более масштабные тесты за то же время. Например, можно запустить 10 агентов на разных поддоменах и получить результаты через час.
- Непрерывность. Агент может работать 24/7, не уставая и не отвлекаясь. Можно запустить его на ночь, а утром получить отчёт. Это особенно полезно для непрерывного мониторинга безопасности.
- Обучение и адаптация. Агент учится на своих ошибках и становится лучше со временем. Можно дообучать его на данных из реальных пентестов. Например, если агент часто ошибается в определённых типах атак, можно добавить больше примеров в обучающую выборку.
- Объяснимость. Агент может объяснить свои действия, что помогает валидировать результаты и учиться у него. Это особенно важно для аудита и соответствия требованиям.
- Снижение ложных срабатываний. За счёт контекста агент может отсеивать многие ложные срабатывания, которые выдают сканеры. Например, он может проверить, действительно ли уязвимость эксплуатируема.
- Имитация реального хакера. Агент действует как человек, что позволяет лучше оценить реальные риски. Он может пробовать нестандартные подходы, которые не описаны в базах.
- Автоматизация сложных сценариев. Агенты могут выполнять многошаговые атаки, которые невозможно автоматизировать обычными скриптами.
- Высокая стоимость. Запуск мощных LLM требует серьёзных вычислительных ресурсов. Если использовать коммерческие API, счёт может быстро вырасти. Например, один сложный пентест с сотнями запросов к GPT-4 может стоить сотни долларов. Для больших проектов может быть выгоднее развернуть собственную модель (например, Llama 3 на своих серверах), но это требует инфраструктуры.
- Риск галлюцинаций. LLM могут придумывать несуществующие уязвимости или неправильно интерпретировать результаты. Нужен человек, который будет валидировать выводы. Галлюцинации особенно опасны, если агент начнёт действовать на основе ложной информации. Например, он может решить, что нашёл эксплойт, и попытаться его применить, что приведёт к ошибке.
- Сложность валидации. Как убедиться, что агент действительно нашёл уязвимость, а не сгенерировал её в воображении? Требуются дополнительные проверки, часто вручную. Это снижает эффективность автоматизации.
- Этические вопросы. Агент, получивший доступ к реальной системе, может случайно нанести вред. Нужны строгие ограничения и режим "песочницы". Важно, чтобы агент не мог выполнять опасные действия без подтверждения человека. Например, он не должен запускать эксплойты, которые могут нарушить работу сервиса, без явного разрешения.
- Скорость. Агент работает медленнее сканеров для простых задач. Его выгодно использовать там, где нужна глубина, а не скорость. Для массового сканирования лучше подходят традиционные инструменты.
- Сложность настройки. Чтобы агент работал эффективно, нужно правильно описать инструменты, задать цели, настроить память. Это требует времени и экспертизы. Нужно также обучить модель на специфических данных.
- Неполное покрытие. Агент может пропустить некоторые уязвимости, особенно если они требуют специфических знаний, которых нет в его обучающих данных. Например, агент может не знать об уязвимости в проприетарном протоколе.
- Зависимость от модели. Эффективность агента сильно зависит от качества базовой LLM. Если модель слабая, агент будет тупить. Кроме того, модели могут быть предвзяты (bias), что скажется на результатах.
- Безопасность агента. Сам агент может стать целью атак. Злоумышленники могут попытаться заманить агента на ложные цели или внедрить вредоносные промпты, чтобы заставить его выполнить нежелательные действия. Нужны механизмы защиты.
- Правовые аспекты. Использование AI-агентов для пентеста может иметь юридические последствия. Например, если агент случайно атакует не ту систему, ответственность может лечь на оператора. Нужно чётко определять границы допустимого.
Как внедрять в процессы
Если ты решил, что хочешь попробовать Agentic AI в своей работе, вот несколько практических советов, основанных на опыте первых внедрений.- Не пытайся заменить пентестеров. Агент - это инструмент, а не замена. Он должен помогать, а не вытеснять. Опытный хакер с агентом в подчинении будет работать эффективнее, чем любой из них по отдельности. Ставь задачу так, чтобы агент дополнял человека, а не конкурировал с ним. Например, агент может проводить первичную разведку, а человек - анализировать результаты и планировать дальнейшие действия.
- Начни с автоматизации разведки. Это самая рутинная часть пентеста. Пусть агент собирает информацию, сканирует порты, ищет поддомены, анализирует заголовки. А ты будешь анализировать результаты и строить стратегию. Это быстро окупится и позволит понять, как агент работает. Например, можно поручить агенту собрать всю информацию о домене и представить её в виде отчёта.
- Используй для многошаговых сценариев. Если нужно проверить сложную цепочку, например, возможность проникновения из внешней сети во внутреннюю, поручи это агенту. Он может потратить на это часы, но найдёт то, что ты мог пропустить. Например, можно задать агенту цель: "получить доступ к серверу баз данных". Он будет сам строить цепочку атак.
- Непрерывный Red Teaming. Запусти агента в тестовой среде и позволь ему постоянно искать уязвимости. Он будет работать 24/7 и оповещать тебя о новых проблемах. Это особенно полезно для больших инфраструктур, которые постоянно меняются. Например, можно настроить агента на сканирование новых поддоменов и сервисов.
- Обучение джуниоров. Агент может служить отличным учебным пособием. Джуниор может смотреть, как агент рассуждает и какие шаги предпринимает, и учиться на этом. Можно даже попросить агента объяснять свои действия подробно. Например, агент может выдавать логи с комментариями: "Я проверяю форму на SQL-инъекцию, потому что она возвращает ошибку".
- Валидируй результаты. Никогда не доверяй агенту на 100%. Все его находки должны быть перепроверены человеком. Используй агента как расширенный сканер, а не как истину в последней инстанции. Например, если агент нашёл уязвимость, проверь её вручную перед включением в отчёт.
- Соблюдай осторожность. Запускай агента только в изолированных средах или на специально подготовленных полигонах. Ограничь его права, чтобы он не мог нанести реальный ущерб. Например, используй контейнеры или виртуальные машины с отключённым доступом к внешним системам. Можно также использовать режим "dry run", где агент только планирует действия, но не выполняет их.
- Интегрируй с существующими инструментами. Агент должен уметь работать с твоим любимым набором инструментов (nmap, Metasploit, Burp). Убедись, что у него есть доступ к ним через API. Например, можно написать обёртки для каждого инструмента, которые принимают параметры и возвращают результаты в формате JSON.
- Настраивай цели и ограничения. Чётко формулируй, что агент должен искать, а что ему запрещено. Например, "не атакуй этот конкретный сервер" или "не используй эксплойты, которые могут повредить данные". Можно задать белый список IP и портов.
- Собирай статистику и улучшай. Записывай все действия агента, анализируй успешные и неудачные попытки. Используй эти данные для дообучения модели или улучшения промптов. Например, можно создать датасет успешных атак и использовать его для fine-tuning.
- Комбинируй с традиционными сканерами. Используй быстрые сканеры для первого прохода, а агента - для углублённого анализа подозрительных мест. Например, сканер может найти 100 потенциальных проблем, а агент выберет 10 самых критичных и проверит их.
- Учитывай стоимость. Планируй бюджет на запросы к LLM. Для больших проектов может быть выгоднее развернуть собственную модель (например, Llama 3 на своих серверах), чем платить за коммерческий API. Рассчитай примерное количество запросов и стоимость.
- Обучай агента на специфических данных. Если ты тестируешь специфические системы (например, промышленные контроллеры), дообучи агента на данных об этих системах. Это повысит точность.
- Используй мультиагентные системы для сложных задач. Если цель очень сложная, разбей её на подзадачи и назначь разных агентов. Например, один агент занимается веб-разведкой, другой - сетевой, третий - социальной инженерией.
- Обеспечь аудит и логирование. Все действия агента должны логироваться для последующего анализа и аудита. Это важно для соответствия требованиям и разбора инцидентов.
- Проводи регулярные тесты агента. Как и любой инструмент, агент может устаревать. Регулярно проверяй его на тестовых полигонах, чтобы убедиться, что он работает корректно.
Заключение
Agentic AI не заменит человека в обозримом будущем. Он станет его ассистентом - супер-стажером, который работает 24/7, не устает, умеет пользоваться сотнями инструментов и может придумывать нестандартные ходы. Но финальное решение, креативность и ответственность всё ещё останутся за человеком.Мы вступаем в эру гибридного пентеста, где AI выполняет черную работу, а человек задаёт направление и проверяет результаты. Те, кто научатся эффективно использовать такие связки, получат огромное преимущество перед теми, кто продолжает воевать со сканерами в одиночку.
Атакующие уже вовсю экспериментируют с агентами. Защитникам пора догонять. Потому что завтра твой бот-пентестер будет охотиться на их ботов-злоумышленников, и выиграет тот, чей агент окажется умнее.
Прогнозы на ближайшее будущее:
- Стандартизация. Появятся стандартные протоколы и API для взаимодействия агентов с инструментами пентеста. Например, OASIS может разработать стандарт для агентов безопасности.
- Специализированные модели. Будут созданы LLM, специально обученные на данных пентестов, с глубоким пониманием уязвимостей и тактик. Это повысит точность и снизит стоимость.
- Маркетплейсы агентов. Компании будут продавать готовых агентов для разных задач (веб-пентест, сетевой пентест, анализ кода). Например, агент для тестирования WordPress или агент для проверки конфигурации AWS.
- Регуляторные требования. Возможно, регуляторы начнут требовать использования AI-агентов в составе обязательных пентестов, особенно для критической инфраструктуры.
- Кибервойны агентов. Мы увидим противостояние агентов-атакующих и агентов-защитников в реальном времени. Например, агент-защитник будет пытаться заблокировать атаки агента-злоумышленника.
- Интеграция с DevSecOps. Агенты будут встраиваться в CI/CD пайплайны для автоматического тестирования безопасности новых релизов.
- Этические и правовые нормы. Появятся правила использования AI в пентесте, чтобы избежать злоупотреблений.