测评样例:安全项
公开教程 · 无需登录

测评样例:安全项

从安全类测评点里抽的七条,末尾附性能一条。这类用例的共同点是:不看接口报什么错,只看有没有拿到不该拿的数据、写操作有没有真的生效。

1这一页管什么

管越权与数据泄露类测评点的写法。

  1. 管安全类测评点。令牌、账号可枚举性、垂直与水平越权、注入、附件归属、权限字段被客户端改写。
  2. 不交由这一页。密钥的存放与轮换、依赖漏洞扫描写在安全开发规范页;性能阈值的整体口径写在部署运维规范页。
  3. 落法。这类用例必须常驻——写进规则,不允许「本次变更不涉及安全」就整组跳过。
对应的课程知识点:最小权限、完全中介(每次访问都要判定)、失效安全、纵深防御。SC18 对应的是「不要相信客户端传来的身份」——权限只能由服务端按会话重新算出,不能采信请求体里的字段。

2七条安全测评点与性能一条

编号沿用样例原文,便于与原始验收表对照。

编号测评点怎么测 → 判缺陷
SC01无令牌、过期令牌、伪造令牌三种情形都要按约定拒绝且不返回业务数据;白名单接口不得把合法请求误拒
SC05登录失败不能看出账号是否存在分别用不存在的账号与存在的账号配错误口令登录;两次的错误码、提示文案与响应结构须一致 → 能区分即为缺陷
SC07垂直越权;一人多岗切换身份低权限账号调用高权限接口;切换到无此权限的身份后再调用 → 按「被放行」判:拿到数据或写操作已生效
SC08水平越权替换他人资源标识,或换账号后用原链接直接取详情 → 仍有数据即为缺陷
SC10注入在参数里放入片段或延时函数 → 结果被改写、出现明显延迟,或因注入变成未处理故障
SC13附件归属无令牌或他人账号下载、删除;标识加减一得到他人文件;预览、缩略图、替换用他人资源 → 按「被放行」判
SC18多传权限字段在合法请求上额外带上 role、isAdmin、orgId 一类字段;保存后查库,当前账号的角色、是否管理员、所属机构须保持原值 → 任一被改成请求中的新值即为缺陷
PF01正向用例响应时长每条正向用例记录端到端耗时 → 超过 50 ms 标记(不算不通过),超过 100 ms 判不通过;阈值按项目自定,此处为示例值。只考核正向用例

3安全用例的四条底线

下列四件完成,安全类用例才算站得住。

  1. 越权用例成对出现。每个读接口都要有一条「他人账号访问」与一条「未登录访问」,缺一即为覆盖不全。
  2. 只看数据,不看提示。判据是「拿到没有」「生效没有」,不是「提示文案是否友好」。
  3. 权限字段一律不采信。请求体里出现角色、管理员标记、所属机构一类字段,服务端必须按会话重新取值。
  4. 失败响应也要检查。错误明细文件、导出文件里不得出现数据范围之外的记录。
这一组用例的价值在于可复现:换一个人、换一台机器跑出来应当是同一组结论。判定口径在前一页,两页要一起读。