修复验证方法

验证方法:按原始证据最小路径复现,确认问题不再触发;再补充变体检查(编码变换、接口参数通道)防止“表面修复”。

验证修复的标准动作

修复验证从原始证据出发:按当初记录的最小路径重放,确认问题不再触发。只做这一步还不够,形似修复的情况很常见,例如只挡住了报告里那一个参数、只改了某一个接口。因此还要做变体检查:换编码方式、换参数通道、换接口版本,确认修复落在校验层而不是单个入口上。

基本信息

基础动作按原始证据最小路径复现
变体检查编码变换、参数通道、接口版本、大小写与路径变体
判定标准以无法再触发为准,返回码只作辅助信息
证据修复前后对照,附时间戳与请求记录
记录结论、证据编号与复测环境写进条目

变体检查的方向

  • 编码变换:URL 编码、双重编码、大小写混写
  • 参数通道:同一参数放在查询串、请求体或请求头中分别验证
  • 接口版本:v1 修复了,v2 是否使用同一套校验逻辑
  • 路径变体:尾部斜杠、重复斜杠、路径参数写法的差异
  • 权限主体:换一个普通账号,验证约束是否与账号无关地生效

验证记录示例

验证记录示例
F-01 修复验证:
前:以普通账号读取他人订单返回 200(v1.1 报告证据 E-12)
后:同路径返回 403(证据 E-21,时间戳记录在案)
变体:路径大小写、参数顺序调整后仍返回 403
变体:v2 接口同参数验证通过,未出现越权
结论:通过,附两组新证据并更新台账状态

验证方式与强度

方式覆盖到什么遗漏风险
原路径重放报告中的具体入口只修了这一个入口时误判通过
变体检查同层的其他入口与写法未覆盖其他功能模块
相邻接口抽查共享校验层的其他接口依赖人工判断范围
回归测试修复对正常功能的影响范围过大时窗口不够
只测原样本极易漏掉不完整修复:变体检查是复测的标准动作,没做的验证结论只能写为部分验证。
返回码变化不等于修复完成:有些系统会把错误统一改成 200 再在前端提示,判定要回到响应内容与数据是否真的被保护。

易错点

  • 仅重放原请求即判定通过
  • 只测修复接口,未检查同层其他接口
  • 把错误信息变化误认为问题已修复
  • 复测证据未标时间戳,无法与修复记录对应

数据来源与参考

  • OWASP WSTG(验证方法)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌