D6-08 8–10 分钟 重要程度:高
覆盖率、指标、报告、RACI 与整改跟踪
测试输出必须转化为覆盖率、风险优先级、管理层报告和可追踪整改;RACI 与独立性帮助明确谁负责修复、批准、咨询和知会。
一、必须记住
- 测试覆盖率可表示为已测用例数量 / 全部用例数量。
- Branch coverage 关注 if/else 分支是否执行。
- Condition coverage 关注每个逻辑条件是否执行。
- Function coverage 关注每个函数是否被调用。
- Loop coverage 关注循环执行 0 次、1 次和多次等情况。
- Statement coverage 关注每行语句是否运行。
- 报告应面向受众:管理层需要业务风险、优先级和建议;技术团队需要证据和复现步骤。
- RACI 用 Responsible、Accountable、Consulted、Informed 明确整改责任。
二、核心概念
覆盖率指标
覆盖率帮助判断测试是否足够,但高覆盖率不保证没有漏洞。语句、分支、条件、函数和循环覆盖率从不同角度衡量测试触达范围。
报告与优先级
评估报告通常向管理层提交,应使用非技术语言说明发现、业务影响、风险等级和具体建议。技术附录可包含证据、受影响资产、复现步骤和修复验证方法。
RACI 与整改
Responsible 是执行修复的人或团队;Accountable 是最终对结果负责的人,通常每项任务只应有一个;Consulted 提供意见;Informed 需要被告知进展。独立审计员不应负责修复自己审计出的缺陷。
三、CISSP 判断规则
- 问“已测用例 / 全部用例”,选 Test coverage。
- 问“if 和 else 是否都执行”,选 Branch coverage。
- 问“每个逻辑条件是否执行”,选 Condition coverage。
- 问“谁最终负责结果”,选 Accountable。
- 问“谁实际完成工作”,选 Responsible。
四、常见陷阱
- 覆盖率是指标,不是安全证明;100% 语句覆盖仍可能漏掉业务逻辑漏洞。
- 管理层报告不应只堆工具输出,要说明业务影响和决策选项。
- 审计员可以提出建议和跟踪状态,但不应成为整改责任人,否则影响独立性。
五、英文关键字
Test coverage (测试覆盖率) 定义:衡量测试覆盖需求、代码、分支或条件的程度。 Branch coverage (分支覆盖率) 定义:衡量条件分支是否被测试执行。 Condition coverage (条件覆盖率) 定义:衡量布林条件中的子条件是否被测试。 Function coverage Loop coverage Statement coverage Security metrics Risk rating Executive report Remediation tracking RACI (职责分配矩阵) 定义:Responsible、Accountable、Consulted、Informed。 Responsible Accountable Consulted Informed
小测验
1. 测试是否执行了 if 和 else 的不同路径,属于哪种覆盖率?
Branch coverage 关注分支路径是否被执行;语句覆盖只看每行是否运行过。
2. RACI 中,最终对整改结果负责并拥有决策权的是?
Responsible 执行工作;Accountable 对结果最终负责,CISSP 题目常把两者区分。
3. 面向管理层的评估报告最应强调什么?
CISSP 强调按受众沟通。管理层需要业务影响、风险决策和建议,而不是未整理的技术输出。
本节进度
完成后会保存在当前浏览器。线上版可保存;不同手机、平板之间暂不自动同步。
尚未完成