跳至主要内容

关于代码和依赖项中漏洞的暴露

了解您自有代码和第三方依赖项中的漏洞如何影响组织整体的安全暴露,以及如何衡量和降低此风险。

谁可以使用此功能?

需要 GitHub Team 或 GitHub Enterprise

未处理漏洞的风险

您的组织在您编写和维护的代码以及使用的开源或第三方依赖项中都面临漏洞暴露。如果您想防止

  • 计划外停机和运营中断。漏洞的利用可能导致应用程序宕机、服务质量下降或关键系统的连锁故障,从而扰乱业务运营。

  • 修复成本增加。漏洞代码未及时处理的时间越长,修复就越困难、成本也越高,尤其是当代码深度集成或发生安全事件时。早期发现和修复可降低昂贵的事件响应、紧急补丁以及声誉受损的风险。

  • 风险的广泛传播。易受攻击的模块和依赖项常在多个应用和服务中复用,这意味着单一缺陷可能在整个组织内部蔓延,叠加风险并放大被利用的影响。

  • 供应链被攻破。攻击者可以利用开源或第三方依赖项中的漏洞注入恶意代码、提升权限或未经授权访问您的系统。受损的依赖项可能成为恶意行为者的间接入口,导致广泛的安全事件。

  • 合规性和许可证问题。许多法规和行业标准要求组织主动处理软件供应链中已知的漏洞。未能修复有漏洞的依赖项可能导致不合规、审计、法律处罚或违反开源许可证义务。

定期评估漏洞暴露有助于及早识别风险并确定修复优先级。

监控仓库中易受攻击代码的方法

  • 代码扫描 自动监控项目代码中的漏洞。当在拉取请求中检测到安全问题时,它会创建一个带有自动修复建议的警报,以解决该漏洞。这降低了解决的门槛并帮助确保项目保持安全。参见 代码扫描的默认设置配置

  • Dependabot 自动监控项目的依赖项是否存在漏洞或已过时的包。当检测到安全问题或新版本时,它会创建拉取请求来更新受影响的依赖项,帮助您快速应对安全风险并保持软件最新。这可以减少手动工作并帮助确保项目保持安全。参见 Dependabot 快速入门指南

GitHub 提供了一套完整的 Dependabot 指标,帮助您在组织的所有仓库中监控、排序并修复这些风险。参见 Dependabot 警报指标概览

降低组织的漏洞暴露

降低组织的漏洞暴露需要持续了解风险、修复进度以及跨仓库的策略执行情况。Dependabot 和代码扫描指标提供了这种可视性。使用以下最佳实践来监控并降低组织的漏洞暴露。

监控依赖项的漏洞指标

使用 Dependabot 的指标概览来了解组织依赖项漏洞的当前状态。参见 查看 Dependabot 警报指标

  • 警报优先级:查看打开的 Dependabot 警报数量,并使用过滤器(如 CVSS 严重性、EPSS 利用可能性、补丁可用性以及漏洞依赖是否实际在已部署的制品中使用)进行筛选。参见 Dependabot 仪表盘视图过滤器
  • 仓库级别细分:识别出哪些仓库拥有最多的关键或可被利用的漏洞。
  • 修复追踪:随时间跟踪已修复警报的数量和比例,以衡量漏洞管理计划的有效性。

监控新出现的代码扫描警报

使用代码扫描的警报视图来了解组织拉取请求中的修复活动。参见 查看拉取请求警报指标

  • 拉取请求中的警报:检查有多少警报被检测到后直接合并到默认分支而未得到解决。
  • 最常触发的规则:找出经常被触发的规则,以便进行开发者教育。
  • 仓库级别细分:识别哪些仓库在拉取请求中检测到的警报数量最多,却仍然合并到了默认分支。
  • 修复追踪:随时间跟踪已修复警报的数量和比例,以衡量漏洞管理计划的有效性。

优先考虑修复工作

聚焦对组织构成最高风险的漏洞。

  • 优先处理严重性为高或关键的警报。对于 Dependabot 警报,还应优先处理 EPSS 分数高且有可用补丁的情况。
  • 利用仓库细分信息将修复工作指向风险最高的项目。
  • 通过仓库自定义属性并使用生产环境上下文,鼓励开发团队修复实际在已部署制品中使用的漏洞。参见 使用生产上下文对 Dependabot 与代码扫描警报进行优先级排序
  • 创建安全活动,以推动并跟踪高优先级代码扫描警报的修复情况。参见 创建与管理安全活动

传达风险和进展

  • 使用指标页面向利益相关者传达关键风险因素和修复进度。
  • 定期提供趋势更新,例如开放的关键漏洞数量的下降或修复率的提升。
  • 突出显示需要额外支持或关注的仓库或团队。

建立并执行策略

  • 在全组织范围内设置安全配置,启用所有现有和新建仓库的 Dependabot 与代码扫描功能。参见 大规模启用安全特性概述
  • 在所有仓库中启用依赖审查,以便对拉取请求进行评论。
  • 创建全组织规则集,以保护默认分支并要求在合并拉取请求前必须修复关键的代码扫描警报。参见 管理组织内仓库的规则集
  • 与仓库管理员合作,尽可能启用自动安全更新。参见 Dependabot 安全更新概述

评估警报的影响

  • 定期审查 Dependabot 与代码扫描警报如何帮助阻止安全漏洞进入代码库。
  • 利用历史数据展示主动依赖管理的价值。
© . This site is unofficial and not affiliated with GitHub, Inc.