根据CERT C编码标准,每条规则都附有风险评估汇总表。
例如:
规则02。声明和初始化(DCL)
DCL31-C。在使用标识符之前声明它们
风险评估摘要
规则严重性可能性修正成本优先级
DCL31-C低不可能低P3 L3
风险评估汇总表向程序员传达了什么信息,如何解释它?上面提到的术语是什么?它们是什么意思?
发布于 2017-12-24 17:23:49
根据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级别-这些级别是针对规模的低严重性、不太可能和难以补救的一端。
Priority 6、8和9属于2级-在严重性、可能性和补救工作方面处于中间水平。
Priority 12、18和27属于1级别--这些倾向于更容易修复的严重程度更高的问题。
这样做的原因是,如果你以递减的级别顺序处理问题,你会得到最好的"bang per buck“。
https://stackoverflow.com/questions/47544413
复制相似问题