PENTEST.RED / REPORT
渗透测试报告示例
该示例说明如何把同一个风险关联到管理决策、工程任务与可验证结果。页面有意省略危险载荷和真实运行密钥。
本页所有组织、系统、事件和结论均为虚构内容,仅用于展示文档结构,不代表实际开展过项目。
01 / DECISION
管理层摘要
在虚构 SaaS 产品 Example Workspace 的约定测试范围内,确认了一个跨组织数据隔离场景。该场景需要有效的低权限账户,并知道测试对象标识。测试未执行破坏性操作,也未访问真实数据。优先事项是恢复服务端对象归属检查,并评估同类操作。
风险负责人需要做出的决策
- 由 API 团队负责修复。
- 检查通用对象授权控制,而不是只修补一个路由。
- 不要把结论扩展到未测试的服务或环境。
02 / BOUNDARIES
范围与限制
本示例展示报告如何区分实际覆盖与排除项。真实报告应列明版本、日期、角色和测试环境。
已测试
- 测试 Web 应用和 API v2。
- 两个测试组织,以及 Member / Manager 角色。
- 约定场景中的项目对象读取与更新操作。
未测试
- 生产环境与真实用户数据。
- 压力、可用性与韧性表现。
- 管理后台与第三方文件服务。
03 / FINDING-001
技术发现
更新项目时未充分检查对象归属
一个测试组织的用户可以通过 API 访问另一个组织的对象。服务器要求有效会话,但在一个更新操作中没有验证对象归属。
安全证据
测试日志记录了修改专门创建的测试对象标记字段后返回成功状态。标识符、令牌和响应内容均已脱敏。在真实项目中,此类证据会通过受保护的报告附件交付;本演示页不会公开。
已观察到的影响
在测试数据范围内,该场景允许修改另一个组织的对象。由于其他对象类型的路由需要单独验证,因此不对其作出结论。
04 / REMEDIATION
修复计划
修复应恢复服务端信任边界,并覆盖同类操作。
- 01
仅在由服务端验证会话得出的组织范围内查询对象。
- 02
对所有对象读取与更新操作应用统一授权策略。
- 03
增加跨组织和跨角色的负向集成测试。
- 04
记录被拒绝的跨租户访问,但不保存敏感值。
05 / ACCEPTANCE
复测与验收
团队提供构建版本、环境与变更组件清单后开始复测。复测覆盖原始场景及同类控制中合理的绕过方式。
复测验收标准
- 组织 A 的用户无法读取或更改组织 B 的测试对象。
- 控制对直接 API 调用同样生效,不依赖界面限制。
- 所有已测试角色均稳定返回预期拒绝结果,且不泄露对象是否存在。
- 对象所有者的合法操作继续正常工作。
已修复 — 测试构建 2.4.1 满足验收标准。未测试生产环境。此状态属于合成示例。
06 / LIMITS
结论限制
渗透测试仅支持对约定范围与时间段作出结论,不能保证不存在漏洞。测试后的变更、排除组件和不可用角色需要单独评估。
PENTEST.RED
把此结构应用到您的项目
先明确资产、角色、禁止操作,以及报告需要支持的决策。