# 自律型ペネトレーションテスト

> 自律型ペネトレーションテストとは何か、PentAGI が目標から report までどのようにテストを実行するか、そして人間がどこで制御を維持するかについて説明します。

自律的なペネトレーションテストでは、AIシステムがテストのステップ自体を計画し、実行します。これまでに発見した内容に基づいて次に何を調べるかを決定し、ツールを実行し、結果を確認し、学習したことを報告書にまとめます。スキャナーは毎回同じチェックを実行しますが、自律型[agent](https://pentagi.com/ja/docs/glossary/#agent)はテストの進行に応じて計画を変更します。

## [PentAGIがテストを実行する方法](https://pentagi.com/ja/docs/concepts/autonomous-pentesting/#how-pentagi-runs-a-test)

ターゲットと目標を自然言語で記述します。何を評価するか、スコープ内にあるもの、完了の基準を指定します。そこから[flow](https://pentagi.com/ja/docs/getting-started/first-flow/)が自動的に実行されます。

1. あなたのメッセージが[task](https://pentagi.com/ja/docs/glossary/#task)になり、generatorがそれを最大15個の[subtask](https://pentagi.com/ja/docs/glossary/#subtask)に分割します。
2. 各subtaskについて、primary agentがsearcher、pentester、coder、installerなどの専門家に作業を委譲し、彼らはそれぞれの[tool](https://pentagi.com/ja/docs/glossary/#tool)を通じて行動します。
3. toolはPentAGI自体内部ではなく、目標に合わせて選択されたイメージから構築された[flow](https://pentagi.com/ja/docs/glossary/#flow)独自の[sandbox](https://pentagi.com/ja/docs/glossary/#sandbox)コンテナ内で実行されます。[worker node](https://pentagi.com/ja/docs/deployment/worker-node/)により、これらのコンテナはPentAGIホストから完全に分離されます。
4. 各subtaskの後、refinerが残りの計画を見直し、結果に応じて計画を変更します。
5. taskが完了すると、reporterがその結果を報告書にまとめ、flowの[report](https://pentagi.com/ja/docs/glossary/#report)がすべてのtaskの結果を集約します。

コマンド、その出力、および結果はflowの[memory](https://pentagi.com/ja/docs/concepts/memory/)に保持されるため、後のsubtaskは以前の成果に基づいて構築されます。agentがそこに保存したガイド、回答、コードは、後のflowでも役立ちます。

## [コントロールを維持する場所](https://pentagi.com/ja/docs/concepts/autonomous-pentesting/#where-you-stay-in-control)

* **スコープ。** agentはtaskに従います。ターゲット、境界、およびあらゆる交戦規則をtaskに記述してください。PentAGIは独自にターゲットを制限しないため、例えば[worker node](https://pentagi.com/ja/docs/glossary/#worker-node)上のファイアウォールルールなど、ネットワークレベルで厳格な境界を実施してください。
* **インタラクティブモード。** **Assistant**モードでは、自律的に実行させるのではなく、agentとともにテストを段階的に進めます。
* **誘導。** 実行中のflowの**Assistant**ビューでは、状態を確認したり、現在のtaskを停止したり、フォローアップの指示を送信したり、計画されたsubtaskを変更したりできます。詳細は[実行中のflowを誘導する](https://pentagi.com/ja/docs/getting-started/first-flow/#steer-a-running-flow)をご覧ください。
* **質問。** `ASK_USER=true`を使用すると、primary agentはflowを一時停止し、あなたに入力を求めることができます。これはデフォルトで無効になっています。
* **制限。** [tool call](https://pentagi.com/ja/docs/glossary/#tool-call)の制限と繰り返し検出により、堂々巡りをするagentを停止させ、reflectorはtool callを停止したagentを復帰させます。詳細は[安全対策](https://pentagi.com/ja/docs/concepts/agents/#safeguards)をご覧ください。

## [適切な用途](https://pentagi.com/ja/docs/concepts/autonomous-pentesting/#when-it-fits)

自律的なテストは、自社システムの定期的な評価、ラボおよびトレーニング用ターゲット、そして[engagement](https://pentagi.com/ja/docs/glossary/#engagement)の初回パス（攻撃対象領域のマッピング、既知の脆弱性の確認、発見事項の報告書の作成）に適しています。これはスコープ、影響、リスクに関するテスターの判断を代替するものではなく、同じtaskの2回の実行結果は異なる可能性があるため、その[finding](https://pentagi.com/ja/docs/glossary/#finding)は確認すべき手がかりとして扱ってください。

> [!WARNING]
> 自分が所有しているシステム、または明示的に評価を承認されているシステムのみをテストしてください。PentAGIの使用は[EULA](https://github.com/vxcontrol/pentagi/blob/main/EULA.md)の対象となります。