Skip to main content

使用 GitHub 预设规则确定 Dependabot 警报的优先级

可以使用 GitHub 特选的规则 GitHub 预设 自动消除 npm 依赖项的低影响开发警报。

谁可以使用此功能?

  • 组织所有者
  • 安全管理员
  • 具有“管理员”访问权限的用户(可以启用、禁用和查看存储库的 GitHub 预设)****

关于 GitHub 预设

Dismiss low impact issues for development-scoped dependencies 规则是 GitHub 预设的规则,可自动消除在开发中使用的 npm 依赖项中发现的某些类型的漏洞。 这些警报涵盖对大多数开发人员而言像是误报的情况,因为关联的漏洞:

  • 在开发人员(非生产或运行时)环境中不太可能被攻击。
  • 可能与资源管理、编程和逻辑以及信息泄露问题相关。
  • 在最坏的情况下,具有有限的影响,例如生成缓慢或测试长时间运行。
  • 不指示生产环境中的问题。

Note

目前,只有 npm 支持自动消除低影响开发警报。

Dismiss low impact issues for development-scoped dependencies 规则包括与资源管理、编程和逻辑以及信息泄露问题相关的漏洞。 有关详细信息,请参阅“Dismiss low impact issues for development-scoped dependencies 规则使用的公开披露的 CWE”。

通过筛选掉这些低影响警报,可以专注于对你重要的警报,而无需担心错过潜在的高风险开发范围警报。

默认情况下,Dismiss low impact issues for development-scoped dependencies 规则在公共存储库上启用,而在专用存储库上禁用。 专用存储库的管理员可以通过为其存储库启用规则来选择加入。

为专用存储库启用 Dismiss low impact issues for development-scoped dependencies 规则

首先需要为存储库启用 Dependabot alerts。 有关详细信息,请参阅“配置 Dependabot 警报”。存储库的

  1. 在 GitHub 上,导航到存储库的主页面。

  2. 在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“安全性”部分中,单击“ 代码安全性和分析”。

  4. 在“Dependabot alerts”下,单击 关闭“Dependabot 规则”。

    存储库的“代码安全性和分析”页的屏幕截图。 齿轮图标以橙色边框突出显示。

  5. 在“GitHub 预设”的右侧,单击“消除开发范围依赖项的低影响问题”右侧,单击

  6. 在“状态”下选择下拉菜单,然后单击“已启用”。

  7. 单击“保存规则”。

Dismiss low impact issues for development-scoped dependencies 规则使用的公开披露的 CWE

除了 ecosystem:npmscope:development 警报元数据外,我们还使用以下 GitHub 特选的常见漏洞枚举 (CWE) 来筛选掉 Dismiss low impact issues for development-scoped dependencies 规则的低影响警报。 我们会定期改进此列表和内置规则涵盖的漏洞模式。

资源管理问题

  • CWE-400 不受控制的资源消耗
  • CWE-770 无限制的资源分配
  • CWE-409 错误处理高度压缩的数据(数据放大)
  • CWE-908 未初始化资源的使用
  • CWE-1333 低效正则表达式复杂性
  • CWE-835 具有无法访问退出条件的循环(“无限循环”)
  • CWE-674 不受控制的递归
  • CWE-1119 过度使用无条件分支

编程和逻辑错误

  • CWE-185 错误的正则表达式
  • CWE-754 异常情况的不当检查
  • CWE-755 异常情况的不当处理
  • CWE-248 未捕获异常
  • CWE-252 未经检查的返回值
  • CWE-391 未经检查的错误条件
  • CWE-696 行为顺序不正确
  • CWE-1254 错误的比较逻辑粒度
  • CWE-665 初始化不正确
  • CWE-703 异常情况的不当检查或处理
  • CWE-178 区分大小写的不当处理

信息泄漏问题

  • CWE-544 缺少标准化错误处理机制
  • CWE-377 不安全的临时文件
  • CWE-451 用户界面 (UI) 错误陈述关键信息
  • CWE-668 向错误球体公开资源