# Автономное тестирование на проникновение

> Что такое автономное тестирование на проникновение, как PentAGI проводит тест от цели до отчёта и где человек сохраняет контроль.

При автономном тестировании на проникновение система ИИ самостоятельно планирует и выполняет шаги теста. Она решает, что исследовать дальше, исходя из уже полученных данных, запускает инструменты, проверяет результаты и фиксирует полученные сведения. Сканер каждый раз выполняет одни и те же проверки; автономный [agent](https://pentagi.com/ru/docs/glossary/#agent) изменяет свой план по ходу теста.

## [Как PentAGI проводит тест](https://pentagi.com/ru/docs/concepts/autonomous-pentesting/#how-pentagi-runs-a-test)

Вы описываете цель тестирования и чего нужно добиться обычным языком: что оценивать, что входит в область действия и что считается завершённым. После этого [flow](https://pentagi.com/ru/docs/getting-started/first-flow/) выполняется самостоятельно:

1. Ваше сообщение становится [task](https://pentagi.com/ru/docs/glossary/#task), а generator делит его на до 15 [subtask](https://pentagi.com/ru/docs/glossary/#subtask).
2. Для каждой subtask primary agent передаёт работу специалистам — searcher, pentester, coder или installer, — которые действуют через свои [tools](https://pentagi.com/ru/docs/glossary/#tool).
3. Tools выполняются в собственном sandbox-контейнере [flow](https://pentagi.com/ru/docs/glossary/#flow), собранном из образа, выбранного под задачу, а не внутри самого PentAGI; [worker node](https://pentagi.com/ru/docs/deployment/worker-node/) полностью изолирует их от хоста PentAGI.
4. После каждой subtask refiner пересматривает оставшийся план и изменяет его, если результаты того требуют.
5. Когда task выполнена, reporter оформляет её результат, а [report](https://pentagi.com/ru/docs/glossary/#report) flow собирает результаты всех своих tasks.

Команды, их вывод и результаты сохраняются в [memory](https://pentagi.com/ru/docs/concepts/memory/) flow, поэтому последующие subtasks опираются на предыдущие; руководства, ответы и код, которые agents сохраняют там, служат также для будущих flows.

## [Где вы сохраняете контроль](https://pentagi.com/ru/docs/concepts/autonomous-pentesting/#where-you-stay-in-control)

* **Область действия.** Agents следуют task: запишите в неё цели тестирования, границы и любые правила взаимодействия. PentAGI самостоятельно не ограничивает цели тестирования, поэтому обеспечьте жёсткие границы на сетевом уровне, например с помощью правил межсетевого экрана на [worker node](https://pentagi.com/ru/docs/glossary/#worker-node).
* **Интерактивный режим.** В режиме **Assistant** вы пошагово проводите тест вместе с agent, вместо того чтобы позволять ему работать самостоятельно.
* **Управление.** Вид **Assistant** запущенного flow позволяет проверить его состояние, остановить текущую task, отправить дополнительные инструкции или изменить запланированные subtasks — см. [Steer a running flow](https://pentagi.com/ru/docs/getting-started/first-flow/#steer-a-running-flow).
* **Вопросы.** При `ASK_USER=true` primary agent может приостановить flow и запросить у вас ввод. По умолчанию эта функция отключена.
* **Ограничения.** Лимиты [tool call](https://pentagi.com/ru/docs/glossary/#tool-call) и обнаружение повторений останавливают agent, который ходит по кругу, а reflector возвращает к работе тот, который перестал вызывать tools — см. [Safeguards](https://pentagi.com/ru/docs/concepts/agents/#safeguards).

## [Когда это подходит](https://pentagi.com/ru/docs/concepts/autonomous-pentesting/#when-it-fits)

Автономное тестирование подходит для повторяющихся оценок ваших собственных систем, лабораторных и учебных целей, а также для первого этапа [engagement](https://pentagi.com/ru/docs/glossary/#engagement): картирования поверхности атаки, проверки известных уязвимостей и оформления результатов. Оно не заменяет суждения тестировщика об области действия, влиянии и рисках, а два запуска одной и той же task могут различаться, поэтому относитесь к его [findings](https://pentagi.com/ru/docs/glossary/#finding) как к сигналам, требующим подтверждения.

> [!WARNING]
> Тестируйте только системы, которыми вы владеете или на оценку которых имеете явное разрешение. Использование PentAGI регулируется [EULA](https://github.com/vxcontrol/pentagi/blob/main/EULA.md).