根据CERT C编码标准,每条规则都附有风险评估汇总表。
例如:
规则02.声明和初始化(DCL)
DCL31-C。在使用之前声明标识符
风险评估摘要
规则严重性可能性修复成本优先级
DCL31-C低可低P3 L3
风险评估汇总表传达程序员的信息是什么,如何解释?上面提到的条款是什么?他们是什么意思?
答案 0 :(得分:0)
根据introduction to the SEI CERT coding standard,风险评估计算为严重性,可能性和补救成本的乘积。
每个值都带有值1
到3
,如下所示:
1 2 3
+------------------+------------+--------------+-----------+
| Severity | Low | Medium | High |
+------------------+------------+--------------+-----------+
| Likelihood | Unlikely | Probable | Likely |
+------------------+------------+--------------+-----------+
| Remediation cost | High (m/m) | Medium (a/m) | Low (a/a) |
+------------------+------------+--------------+-----------+
最后一行中的m
和a
项规定了处理规则的检测和更正要求(m
表示手动,a
表示自动)。因此,我们有一个表格,其数量很大,可以提高严重性和可能性,并减少修复工作量。
结果产品的优先级为1
到27
,但只有该范围内的某些值是可能的(例如,无法将数字乘以得到7
)
然后将该产品(优先级)转换为以下级别:
优先级1
到4
的级别为3
- 这些都是针对严重程度较低,不太可能且难以修复的结果。
优先级6
,8
和9
是2
级别 - 在严重性,可能性和补救措施方面处于中间位置。
优先级12
,18
和27
级别为1
- 这些问题往往会导致严重程度较高,可能会出现更容易解决的问题。
这样做的原因是,如果你以降低级别的顺序解决问题,你将获得最好的“每次降压”。