Criticality Score
本评估模型参考了OpenSSF Criticality Score项目的实现,用于生成每个开源项目的关键性评分,创建关键项目列表,并利用这些数据主动改善这些关键项目的安全状况。
评估模型中的指标
创建时间
- 定义:项目创建至今的时间(以月为单位)
- 权重:9.523%
- 阈值:120
较老的项目有更高的机会被广泛使用或被其他项目依赖。
更新时间
- 定义:项目最后更新时间至今的时间(以月为单位)
- 权重:-9.523%
- 阈值:120
没有最近提交的未维护 项目被依赖的可能性较低。
贡献者数量
- 定义:项目贡献者数量(有提交记录的)
- 权重: 19.047%
- 阈值:5000
不同贡献者的参与表明项目的重要性。
组织数量
- 定义:贡献者所属的不同组织的数量
- 权重:9.523%
- 阈值:10
表明跨组织依赖关系。
提交频率
- 定义:过去一年中平均每周提交次数
- 权重:9.523%
- 阈值:1000
更高的代码变更率略微表明项目的重要性。同时,也更容易受到漏洞影响。
最近发布数量
- 定义:过去一年中的发布次数
- 权重:4.761%
- 阈值:26
频繁发布表明用户依赖。权重较低,因为这不总是被使用。
关闭问题数量
- 定义:过去90天内关闭的问题数量
- 权重:4.761%
- 阈值:5000
表明高贡献者参与度和对关闭用户问题的关注。权重较低,因为它依赖于项目贡献者。
更新问题数量
- 定义:过去90天内更新的问题数量
- 权重:4.761%
- 阈值:5000
表明高贡献者参与度。权重较低,因为它依赖于项目贡献者。
评论频率
- 定义:过去90天内每个问题的平均评论数
- 权重:9.523%
- 阈值:15
表明用户活动和依赖关系。
依赖者数量
- 定义:提交消息中该项目被其他项目提及的次数
- 权重:19.047%
- 阈值:50
表明仓库使用情况,通常在版本更新中。此参数适用于所有语言。
评估模型算法
模型权重和阈值
我们使用以下参数来计算开源项目的关键性评分:
| 指标名称 (Si) |
|---|