安全测试中的越权用例矩阵
2024年5月记录,分类「安全测试」。这篇按当时的测试现场整理,重点放在目标、动作和可复用的检查点。
矩阵怎么画
越权测试不能只换一个 token 试试。比较稳的方式是先画角色、租户、组织、数据归属矩阵,再逐类覆盖。
我当时想确认的不是工具能不能跑,而是这个点能不能稳定地变成测试资产。
账号准备
- 准备同角色不同租户、上下级角色、禁用账号三类账号。
- 详情、列表、导出、批量操作都要测。
- Body、URL、Header 里的对象 id 都要尝试篡改。
A租户用户 -> A租户订单: 允许
A租户用户 -> B租户订单: 403
禁用账号 -> 任意订单: 401/403
接口覆盖
- 正常权限允许,越权访问拒绝。
- 错误信息不泄露敏感数据。
- 服务端校验不依赖前端隐藏按钮。
这些点后面会进用例或检查单,尤其要补齐账号、数据、环境版本和日志关键字。
修复验证
越权用例矩阵化以后,覆盖范围会比临时发散测试稳定很多。后面遇到类似需求,可以先按这个结构跑一遍手工验证,再决定是否自动化。