-
-
AI决策引擎:大模型如何自动规划渗透测试流程
-
发表于: 2026-9-26 17:30 167
-
一、传统渗透测试的痛点
传统渗透测试是"人驱动"的:人工侦察→人工判断→手动选工具→手动分析结果。严重依赖个人经验,同一个目标,新手和老手的测试结果可能差10倍。
AI决策引擎的目标是:让大模型代替人做"决策",工具只负责"执行"。
二、ReAct模式设计
核心思想:ReAct模式(Reasoning + Acting)
观察(Observation) → 思考(Thought) → 行动(Action) → 观察 → 重复
每一轮:AI观察当前状态(资产、漏洞、进度)→ AI思考下一步 → AI调用工具执行 → AI观察结果 → 循环直到完成。
三、工具定义(Function Calling)
AI能调用的工具用OpenAPI格式定义:
TOOLS = [
{"name": "nmap_scan", "description": "扫描目标端口和服务"},
{"name": "nuclei_scan", "description": "用Nuclei模板扫描URL漏洞"},
{"name": "sqlmap_test", "description": "测试参数SQL注入"},
{"name": "generate_report", "description": "生成渗透测试报告"}
]四、决策循环实现
async def ai_pentest(target: str, max_rounds: int = 10):
messages = [
{"role": "system", "content": SYSTEM_PROMPT},
{"role": "user", "content": f"开始对{target}进行渗透测试"}
]
for round_num in range(max_rounds):
response = await ai_chat_with_tools(messages, TOOLS)
if response.tool_calls:
for tc in response.tool_calls:
result = await execute_tool(tc.name, tc.arguments)
messages.append({"role": "tool", "content": str(result)})
else:
break # AI认为测试完成五、System Prompt设计
System Prompt是AI决策引擎的灵魂:
你是一个专业的渗透测试AI助手。 1. 先侦察:用nmap_scan和subfinder了解资产 2. 再扫描:用nuclei_scan扫描URL漏洞 3. 深验证:对可疑漏洞深度验证 4. 出报告:测试完成后调用generate_report 规则:每次只调一个工具,优先高危,最多10轮
六、多Agent协作
单Agent容易混乱,我的方案是多Agent:
- 协调者Agent:分配任务、汇总结果
- 侦察Agent:子域名、端口、指纹
- 扫描Agent:漏洞扫描、去重
- 验证Agent:误报过滤、PoC验证
七、实战效果
| 指标 | 人工测试 | 单Agent | 多Agent |
|---|---|---|---|
| 耗时 | 4小时 | 25分钟 | 12分钟 |
| 发现漏洞 | 15个 | 11个 | 14个 |
| 误报率 | 5% | 18% | 8% |
八、局限和改进
当前局限:上下文窗口限制、偶尔传错参数、复杂链式利用搞不定。改进方向:RAG喂历史案例、参数校验、引入反思机制。
九、小结
AI决策引擎是平台的大脑。ReAct模式+Function Calling+多Agent协作,就能实现真正的自动化渗透测试。
下一篇分享移动安全分析:如何自动化分析APK安全风险。
本文是「AI安全渗透测试实战」系列的第4篇。完整课程包含12章40节。项目开源地址:f73K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1j5I4L8%4g2^5K9h3I4A6M7$3W2Q4x3V1k6S2K9g2)9J5k6s2y4W2j5%4g2J5K9i4c8&6i4K6u0V1j5h3N6W2L8Y4c8Q4x3X3c8H3L8r3q4@1k6X3!0J5L8i4j5@1y4g2)9J5k6e0l9`. · 12领域59个安全代理 · MIT许可证
项目开源地址:57cK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1j5I4L8%4g2^5K9h3I4A6M7$3W2Q4x3V1k6S2K9g2)9J5k6s2y4W2j5%4g2J5K9i4c8&6i4K6u0V1j5h3N6W2L8Y4c8Q4x3X3c8H3L8r3q4@1k6X3!0J5L8i4j5@1y4g2)9J5k6e0l9`. · 12领域59个安全代理 · MIT许可证