概念
自主渗透测试
什么是自主渗透测试,PentAGI 如何从目标到报告执行测试,以及人员如何保持控制。
在自主渗透测试中,AI 系统自行规划并执行测试步骤。它根据迄今的发现决定下一步检查什么,运行工具,检查结果,并撰写所学内容。扫描器每次运行相同的检查;而自主 agentagent — 智能体PentAGI 的智能体:一种拥有独立提示词、设置和工具的人工智能模型,在流程中执行特定类型的工作,例如测试、编写代码或搜索网络。 会在测试过程中调整其计划。
PentAGI 如何运行测试
您用自然语言描述目标和目的:要评估什么、范围是什么以及怎样才算完成。从此处开始,一个 flow 会自动运行:
- 您的消息变为一个 tasktask — 任务流程中的一个请求:其第一条消息,或并非回答智能体提问的后续消息。PentAGI 将每个任务拆分为子任务。,generator 将其拆分为最多 15 个 subtasksubtask — 子任务任务的一个步骤。PentAGI 会规划每个任务的子任务,并随着工作进展进行调整。。
- 对于每个 subtask,primary agent 将工作交给专家——searcher、pentester、coder 或 installer——他们通过各自的 tooltool — 工具智能体执行操作所用的手段:终端、隔离浏览器或网络搜索等内置功能,或沙箱中的程序,例如 nmap、metasploit 或 sqlmap。 执行操作。
- Tool 在 flowflow — 流程PentAGI 的一次运行:一个目标、根据您的消息创建的任务,以及智能体在此过程中执行的所有操作。 专属的 sandboxsandbox — 沙箱智能体运行其工具的隔离 Docker 容器。界面中将其显示为 Terminal。 容器中运行,该容器根据目标选择的镜像构建,而非在 PentAGI 内部运行;worker node 使它们完全脱离 PentAGI 主机。
- 每个 subtask 结束后,refiner 会审查剩余计划,并在结果需要时进行调整。
- 当 task 完成后,reporter 会撰写其结果,flow 的 reportreport — 报告PentAGI 编写的关于流程及其发现项的文档。在 Enterprise 版中,它是基于模板生成的、可直接交付给客户的文档。 会收集其所有 task 的结果。
命令、其输出和结果都保留在 flow 的 memory 中,因此后续的 subtask 可以建立在之前的基础上;agent 保存其中的指南、答案和代码也可供后续 flow 使用。
您保持控制的地方
- 范围。 Agent 遵循 task:将目标、边界和任何交战规则写入其中。PentAGI 不会自行限制目标,因此请在网络层面强制执行硬性边界,例如在 worker nodeworker node — 工作节点运行智能体工具容器的独立服务器,因此它们运行的命令永远不会触及主 PentAGI 主机。 上使用防火墙规则。
- 交互模式。 在 Assistant 模式下,您与 agent 逐步完成测试,而不是让其自行运行。
- 引导。 正在运行的 flow 的 Assistant 视图允许您检查其状态、停止当前 task、发送后续指令或更改计划的 subtask——请参阅 Steer a running flow。
- 提问。 使用
ASK_,primary agent 可以暂停 flow 并向您征求输入。默认情况下此功能处于关闭状态。USER=true - 限制。 Tool calltool call — 工具调用模型发出的运行智能体某个工具的请求,例如终端命令或网络搜索。 限制和重复检测可以阻止陷入循环的 agent,而 reflector 可以恢复停止调用 tool 的 agent——请参阅 Safeguards。
适用场景
自主测试适用于对您自有系统、实验室和培训目标的重复评估,以及 engagementengagement — 项目安全团队向其客户交付的工作,例如对客户系统进行渗透测试。其中的每次 PentAGI 运行都是一个流程。 的初步阶段:映射攻击面、检查已知弱点并撰写发现内容。它不能替代测试人员在范围、影响和风险方面的判断,并且同一 task 的两次运行结果可能不同,因此应将其 findingfinding — 发现项测试中发现并记录的内容,例如主机、正在运行的服务或漏洞。 视为需要确认的线索。
仅测试您拥有或已明确授权评估的系统。使用 PentAGI 需遵守 EULA。
最后更新于