稳健性
定义:生态系统面对内部或者外部冲突自我恢复的能力。
评估模型
Scorecard
指标名称 | 定义 | 得分范围 | 权重 | 风险等级 |
---|---|---|---|---|
二进制制品 | 检查项目中是否包含生成的二进制文件 | 0-10 | 10% | 高 |
分支保护 | 检查默认分支和发布分支是否受到保护 | 0-10 | 10% | 高 |
CI测试 | 检查项目是否在合并 PR 前运行测试 | 0-10 | 8% | 低 |
CII最佳实践 | 检查项目是否获得 OpenSSF 最佳实践徽章 | 0-10 | 8% | 低 |
代码审查 | 检查项目是否要求人工代码审查 | 0-10 | 10% | 高 |
贡献者 | 检查项目是否有来自多个组织的贡献者 | 0-10 | 5% | 低 |
危险工作流 | 检查 GitHub Actions 工作流是否有危险代码模式 | 0-10 | 10% | 严重 |
依赖更新工具 | 检查项目是否使用依赖更新工具 | 0-10 | 8% | 高 |
模糊测试 | 检查项目是否使用模糊测试 | 0-10 | 5% | 中 |
许可证 | 检查项目是否发布了许可证 | 0-10 | 5% | 低 |
维护状态 | 检查项目是否积极维护 | 0-10 | 8% | 高 |
打包发布 | 检查项目是否发布为包 | 0-10 | 5% | 中 |
依赖版本固定 | 检查项目是否固定依赖版本 | 0-10 | 8% | 中 |
静态安全测试 | 检查项目是否使用静态应用安全测试 | 0-10 | 5% | 中 |
软件物料清单 | 检查项目是否维护软件物料清单 | 0-10 | 5% | 中 |
安全策略 | 检查项目是否发布安全策略 | 0-10 | 5% | 中 |
发布版本签名 | 检查项目是否对发布制品进行加密签名 | 0-10 | 8% | 高 |
令牌权限 | 检查自动化工作流令牌是否遵循最小权限原则 | 0-10 | 8% | 高 |
漏洞状态 | 检查项目是否有未修复的漏洞 | 0-10 | 8% | 高 |
网络钩子 | 检查 webhook 是否配置了令牌认证 | 0-10 | 5% | 严重 |
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 |
CII 最佳实践徽章
指标名称 | 定义 |
---|---|
徽章等级 | 用于评估开源项目是否采用了一套以安全为重点的最佳开发实践 |