验证修复的标准动作
修复验证从原始证据出发:按当初记录的最小路径重放,确认问题不再触发。只做这一步还不够,形似修复的情况很常见,例如只挡住了报告里那一个参数、只改了某一个接口。因此还要做变体检查:换编码方式、换参数通道、换接口版本,确认修复落在校验层而不是单个入口上。
基本信息
| 基础动作 | 按原始证据最小路径复现 |
|---|---|
| 变体检查 | 编码变换、参数通道、接口版本、大小写与路径变体 |
| 判定标准 | 以无法再触发为准,返回码只作辅助信息 |
| 证据 | 修复前后对照,附时间戳与请求记录 |
| 记录 | 结论、证据编号与复测环境写进条目 |
变体检查的方向
- 编码变换:URL 编码、双重编码、大小写混写
- 参数通道:同一参数放在查询串、请求体或请求头中分别验证
- 接口版本:v1 修复了,v2 是否使用同一套校验逻辑
- 路径变体:尾部斜杠、重复斜杠、路径参数写法的差异
- 权限主体:换一个普通账号,验证约束是否与账号无关地生效
验证记录示例
验证记录示例
F-01 修复验证:
前:以普通账号读取他人订单返回 200(v1.1 报告证据 E-12)
后:同路径返回 403(证据 E-21,时间戳记录在案)
变体:路径大小写、参数顺序调整后仍返回 403
变体:v2 接口同参数验证通过,未出现越权
结论:通过,附两组新证据并更新台账状态验证方式与强度
| 方式 | 覆盖到什么 | 遗漏风险 |
|---|---|---|
| 原路径重放 | 报告中的具体入口 | 只修了这一个入口时误判通过 |
| 变体检查 | 同层的其他入口与写法 | 未覆盖其他功能模块 |
| 相邻接口抽查 | 共享校验层的其他接口 | 依赖人工判断范围 |
| 回归测试 | 修复对正常功能的影响 | 范围过大时窗口不够 |
只测原样本极易漏掉不完整修复:变体检查是复测的标准动作,没做的验证结论只能写为部分验证。
返回码变化不等于修复完成:有些系统会把错误统一改成 200 再在前端提示,判定要回到响应内容与数据是否真的被保护。