复现步骤写法

复现步骤写给要验证修复的人:前置条件、编号步骤、预期结果与实测结果分开;使用占位符而非真实数据,不提供可直接滥用的完整载荷。

复现步骤写法

复现步骤是写给要验证修复的人看的:目标是让对方在不联系作者的情况下独立还原现象并确认修复是否生效。因此前置条件、编号步骤、预期结果与实测结果要分开写清楚,一步一个动作。写法上有两条纪律:用占位符代替真实数据,例如订单号写成尖括号包裹的占位符;不提供可直接滥用的完整载荷,也不描述规模化的获取方法,只保留足以验证问题存在的结构。

基本信息

前置条件账号、环境、工具状态与必要数据准备
步骤写法编号排列,一步一个动作,避免合并动作
结果呈现预期结果与实测结果分列对比
安全边界教学性结构,不放大破坏效果

典型使用场景

  • 越权类问题:用两个账号交叉请求说明归属校验缺失
  • 注入类问题:用无害标记串说明输入被带入了执行上下文
  • 配置类问题:说明在哪个界面或配置项观察到不符合基线
  • 信息泄露:用元数据级证据说明可读取范围
  • 复测验证:同一份步骤两次执行,对比修复前后结果

写法示例

写法示例
前置:只读测试账号 audit、预发环境地址、浏览器代理已就绪
步骤:
1. 登录后打开订单列表页
2. 将请求中的订单号替换为他人订单号(占位 <ORDER_ID>)
3. 发送请求并观察响应状态码与响应体字段
预期:返回 403
实测:返回 200,且响应含他人订单字段
备注:批量性验证只写小样本结论,不描述规模化方法

要素与写作要求

要素写作要求常见问题
前置条件写明账号、环境与工具状态缺失后复测人员无法还原
步骤编号且单步骤单动作多动作混写导致无法定位失败点
预期与实测分列对比,附响应特征只写实测,缺少判断基准
数据使用占位符写入真实客户数据造成泄露
复现步骤的质量直接影响复测效率:步骤写成可执行清单,复测方拿到后无需再沟通即可验证。

易错点

  • 步骤写成完整操作链路:超出报告必要范围,也放大了滥用风险
  • 缺前置条件:复测人员还原不出环境,结论无法验证
  • 混入真实客户数据:造成二次泄露,必须换成占位符
  • 只写实测不写预期:缺少判断基准,读者不知道问题出在哪一步
  • 描述规模化获取方法:超出验证必要范围,属于必须避免的写法

数据来源与参考

  • OWASP WSTG(复现记录)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌