变更类动作要设计回退
并非所有渗透动作都只读:验证越权可能需要新建测试账号,验证上传可能需要写入文件,验证配置问题可能需要临时改一项参数。凡是会产生变更的动作,都应当在方案里先写好回退栏——执行前记录原状态,执行后逐项还原并核对一致。这些遗留项往往是项目结束后才被发现的隐患。
基本信息
| 适用对象 | 新建账号与数据、修改的配置、上传的文件 |
|---|---|
| 回退原则 | 执行前记录原状态,执行后逐项还原 |
| 核对要求 | 回退完成后核对与原状态一致并留证 |
| 记录方式 | 变更清单:动作、对象、原值、回退动作、状态 |
| 授权前提 | 变更类动作须在授权或规则文件中明确允许 |
典型需要回退的动作
- 为验证越权而新建的测试账号与测试数据
- 为验证上传缺陷而写入的测试文件
- 为验证配置问题而临时调整的参数项
- 为验证权限提升而临时加入的用户组
- 为验证定时任务缺陷而创建的计划任务
回退规划示例
回退规划示例
# 动作:创建测试账号 test_pentest_01
# 记录:创建时间、账号名、所属角色
# 回退:验证完成后立即删除,并确认登录失败
# 动作:上传测试文件 probe.txt 到上传目录
# 回退:删除文件并核对目录列表与原状一致
# 动作:修改接口超时参数用于复现
# 回退:恢复原值并复测接口响应正常变更清单读法
| 字段 | 含义 | 填写要求 |
|---|---|---|
| 动作 | 执行了什么变更 | 写清对象与操作,不写简称 |
| 原状态 | 变更前的原始值或状态 | 变更前记录,事后无法补记 |
| 回退动作 | 如何恢复到原状态 | 可执行且可验证的具体步骤 |
| 状态 | 当前是否已回退 | 完成后打钩并与客户核对 |
写方案时就写好回退栏,比现场临时补救从容得多;回退步骤要具体到命令或界面路径。
未获授权不得执行变更类动作;即使获得授权,也应在业务低峰期执行并提前通知对接人。