渗透测试会话
TestNet 提供了业界领先的 AI 协同渗透测试会话中台。通过渗透会话,安全人员或外部 AI Agent(如 Claude、Cursor 等)可以围绕特定的项目与测试目标开展结构化、有计划的渗透测试。系统将全程记录 AI 的推理链条、决策依据、执行动作及产出资产与漏洞,实现渗透过程 100% 可审计、可追溯、可复盘。

核心概念
- 会话:渗透测试的最高层级容器,绑定特定的项目上下文、测试目标(Target)与合规范围(Scope)。
- 决策思考链:以树状结构记录 AI 或测试人员在各测试阶段的决策目标(Target)、思考理由(Rationale)、执行动作(Action)、所处阶段(Phase)与新发现线索(New Leads)。
- 关联数据:在会话期间产生的所有 HTTP 交互留痕(HttpRecord)、后台扫描任务(Task)、新录入漏洞(Vulnerability)均自动与该会话打标绑定。
会话生命周期管理
在左侧导航点击 「AI」→「会话」 进入会话管理列表。
1. 新建会话
点击右上角「新增」按钮,填写以下会话要素:
- 所属项目(必填):选择归属的项目上下文(会话数据将严格隔离在该项目内)。
- 目标 (Target)(必填):测试的主要目标,如
pay.example.com或192.168.10.0/24。 - 出口探针节点(可选):指定本次会话流量中继所使用的出口探针(默认直连)。
- 测试范围 (Scope):授权测试范围,支持多行输入通配符,如
*.example.com、!internal.example.com。
通过 MCP
testnet_blackboard(action="create_engagement")创建会话时,还可传入name(会话名称)与description(描述,写入会话摘要)。
2. 会话状态流转
进行中 (RUNNING):会话正处于活跃测试状态,AI 工具调用与 HTTP 中继将默认记入该会话。已完成 (COMPLETED):测试结束并已产出测试总结,状态锁定,仅供复盘审计。已中止 (ABORTED):测试被主动中止,会话保留全部已产生的时间线记录但不再接收新动作。
深入会话详情看板
点击列表中的任意会话名称,进入会话全景工作台(EngagementDetail):
1. 决策时间线
- 时间线按时间先后顺序(正序)展示每一条决策记录。
- 展开单条记录可清晰查看:
- 决策意图:AI 当下想要达成的子目标(例如:检测管理后台是否存在弱口令或未授权访问)。
- 技术依据:支撑该决策的上一阶段扫描输出或指纹线索。
- 执行动作:AI 记录的具体动作(如
testnet_http(action="relay")、testnet_access_control(action="matrix_test"))。 - 新发现线索:本步骤产生的新线索或待验证假设,可在黑板上继续展开子决策。
2. 流量记录追踪
- 展示会话期间 AI 探针发出的所有 HTTP 中继请求。
- 支持按状态码(200、302、403、500)、请求方法(GET、POST)快速筛选。
- 点击可直接跳转至流量详情查看 Header、Body 及差分对比。
3. 时间线上的漏洞与任务节点
- 会话期间发现的新漏洞(VUL)与触发的后台扫描任务(TASK)会以时间线节点形式呈现在决策流中,可按类型过滤查看;
- 漏洞节点展示漏洞名称、标签与目标;任务节点展示任务标题、状态与目标,点击可跳转任务详情查看 ANSI 日志。
协同外部 AI Agent
如果您正在使用 Claude Code、Cursor 或 Windsurf,外部智能体可使用平台内置的 MCP 门面工具全生命周期自动化管理会话:
| 操作意图 | MCP 调用方式 | 示例参数 |
|---|---|---|
| 创建会话 | testnet_blackboard(action="create_engagement") | {"projectId": "proj_001", "targetInput": "https://api.test.com", "scope": "*.test.com", "description": "API越权审计"} |
| 记录思考 | testnet_blackboard(action="log_decision") | {"projectId": "proj_001", "target": "https://api.test.com/users/export", "phase": "exploit", "rationale": "发现了未鉴权接口 /users/export,需验证越权"} |
| 查询时间线 | testnet_blackboard(action="get_engagement") | {"engagementId": "eng_abc123", "summary_only": false} |
| 结束测试 | testnet_blackboard(action="end_engagement") | {"engagementId": "eng_abc123", "summary": "测试完成,发现高危越权1处"} |
历史原子名称
testnet_create_engagement、testnet_log_decision等仍兼容可用,行为与对应门面 action 等价。
会话与报告导出
测试完成后,您可以在会话详情页点击「导出 HAR」一键将测试全流量打包下载,或通过 AI Agent 汇总生成符合行业标准的渗透测试总结报告。