【 3-5 】
数据安全软件测试
第3.5章 数据安全软件测试
本章内容依据《数据安全工程技术人员(初级)第3模块零基础详细学习教材》整理,系统讲解数据安全软件测试。
5.1 测试目标与类型
安全测试验证安全需求是否被正确实现、配置是否符合基线、控制是否真正有效、异常情况下系统是否保持受控。
| 测试类型 | 验证目标 | 示例 |
|---|---|---|
| 功能测试 | 安全功能按设计工作 | 手机号脱敏在页面、报表和接口生效 |
| 权限测试 | 角色只访问授权资源 | 普通账号不能导出全量客户数据 |
| 配置测试 | 系统符合安全基线 | 默认账号关闭,不必要端口未开放 |
| 日志测试 | 关键操作有完整日志 | 导出、删除和授权可查询 |
| 恢复测试 | 备份可以恢复 | 恢复指定表并核对完整性 |
| 异常测试 | 错误条件下保持受控 | 无效令牌被拒绝并记录日志 |
| 回归测试 | 整改未破坏原有功能 | 修改脱敏后复测页面与接口 |
5.2 测试计划怎么写
| 项目 | 需要写清楚的内容 |
|---|---|
| 测试对象 | 系统名称、版本、模块、环境和责任人 |
| 测试目标 | 需要验证的安全能力和风险点 |
| 测试范围 | 功能、接口、账号、数据库、日志、备份和配置 |
| 测试数据 | 模拟、脱敏或经批准的受控数据 |
| 测试方法 | 功能验证、配置核验、日志检查和恢复演练 |
| 通过标准 | 预期结果、缺陷等级和整改期限 |
| 风险控制 | 业务影响、测试窗口、备份和回退 |
5.3 测试用例的基本要素
1. 编号:便于引用和跟踪。
2. 测试项:说明验证的功能或控制。
3. 前置条件:账号、数据、环境和配置状态。
4. 操作步骤:每一步清晰、可重复。
5. 预期结果:明确允许、拒绝、脱敏、告警或日志表现。
6. 实际结果与证据:截图、日志、时间和问题编号。
5.4 测试用例示例
| 编号 | 测试项 | 操作步骤 | 预期结果 |
|---|---|---|---|
| TC-01 | 手机号脱敏 | 普通客服查询页面和接口 | 仅显示前三位和后四位 |
| TC-02 | 全量导出 | 普通业务账号导出全部客户 | 拒绝或进入审批并记录日志 |
| TC-03 | 接口鉴权 | 缺失、无效和过期令牌调用 | 全部拒绝并返回受控错误 |
| TC-04 | 审计日志 | 执行查询、导出、修改和删除 | 日志含账号、时间、对象、来源和结果 |
| TC-05 | 备份恢复 | 恢复指定测试数据集 | 目标时间内恢复,完整性通过 |
| TC-06 | 过期账号 | 使用到期第三方账号登录 | 拒绝并产生审计记录 |
5.5 权限测试方法
| 测试方向 | 示例 |
|---|---|
| 正常授权 | 考试管理员可查看职责范围内的成绩 |
| 未授权访问 | 普通客服不能看完整身份证号 |
| 横向越权 | A 部门人员不能访问 B 部门数据 |
| 纵向越权 | 普通人员不能执行管理员操作 |
| 过期权限 | 临时账号到期后不能登录 |
| 接口与页面一致 | 页面脱敏时接口也不能返回完整值 |
| 导出与查询一致 | 无导出权限的角色不能通过报表绕过 |
5.6 缺陷记录
| 字段 | 示例 |
|---|---|
| 缺陷编号 | BUG-2026-015 |
| 问题描述 | 普通客服通过导出接口获得完整手机号 |
| 影响范围 | 客服角色、客户列表导出接口 |
| 风险等级 | 高 |
| 复现步骤 | 登录客服账号 → 调用导出接口 → 下载文件 |
| 证据 | 请求时间、账号、接口、日志编号和测试文件 |
| 整改建议 | 统一接口权限与动态脱敏,增加审批 |
| 责任与期限 | 应用负责人,指定日期前完成 |
| 复测结果 | 整改后仅能导出脱敏字段 |
测试纪律:任何可能影响生产系统可用性、完整性或保密性的测试,都应在明确授权、受控账号、受控数据、维护窗口和回退措施下实施。
本节自测
1. 安全测试为什么必须包含拒绝路径?
2. 预期结果为什么要写得具体?
3. 发现缺陷后哪些证据有助于复现?