软件通常依赖于来自各种源的包,从而创建一个依赖项关系,这些依赖关系可能无意中引入安全漏洞。 当代码依赖于具有已知安全漏洞的包时,你将成为攻击者试图利用系统的目标,从而可能获取对代码、数据、客户或参与者的访问权限。 Dependabot alerts 会通知你易受攻击的依赖项,以便你能够升级到安全版本并保护你的项目。
当Dependabot发送警报时
Dependabot 扫描您的存储库的默认分支,并在以下情况下发送警报:
- 向 GitHub Advisory Database
- 当你推送提交以更新包或版本时,你的依赖项图将发生更改。
有关支持的生态系统,请参阅 依赖项关系图支持的包生态系统。
了解警报
当 GitHub 检测到易受攻击的依赖项时,Dependabot 警报会显示在存储库的“安全”选项卡和依赖关系图上。 每个警报包括:
- 指向受影响文件的链接
- 有关漏洞及其严重性的详细信息
- 有关固定版本的信息(如果可用)
有关查看和管理警报的信息,请参阅 查看和更新 Dependabot 警报。
启用警报
存储库管理员和组织所有者可以为他们的存储库和组织启用 Dependabot alerts。 启用后,GitHub 立即生成依赖项关系图,并为它标识的任何易受攻击的依赖项创建警报。 存储库管理员可以向其他用户或团队授予访问权限。
请参阅“配置 Dependabot 警报”。
警报通知
默认情况下,GitHub 向同时符合以下条件的人发送有关新警报的电子邮件通知:
- 对存储库具有写入、维护或管理员权限
- 正在监视存储库,并为安全警报或存储库上的所有活动启用通知
可以通过选择要接收的通知类型或在用户通知的设置页中完全关闭通知 https://github.com/settings/notifications来替代默认行为。
无论通知首选项如何设置,首次启用 Dependabot 时,GitHub 不会针对仓库中找到的所有易受攻击的依赖项发送通知。 如果通知首选项允许接收通知,你将收到针对 Dependabot 启用后新标识的易受攻击的依赖项的通知。
如果你担心收到过多通知,我们建议利用 Dependabot 自动分类规则 来自动忽略低风险警报。 规则在发送警报通知之前应用,因此在创建时自动消除的警报不会发送通知。 请参阅“关于 Dependabot 自动分类规则”。
或者,可以选择加入每周电子邮件摘要,甚至完全关闭通知,同时保持 Dependabot alerts 处于启用状态。
局限性
Dependabot alerts 具有一些限制:
- 警报无法检测每个安全问题。 始终查看依赖项,并保持清单和锁定文件的最新状态,以便进行准确的检测。
- 新的漏洞可能需要一段时间才会出现在 GitHub Advisory Database 中并触发警报。
- 只有 GitHub 审核的公告才会触发警报。
- Dependabot 不会扫描存档的存储库。
- Dependabot 不会生成恶意软件的警报。
- 对于 GitHub Actions,Dependabot alerts 仅针对使用语义版本控制(SemVer)的操作生成,而不针对 SHA 版本控制。
GitHub 永远不会公开披露任何存储库的漏洞。
延伸阅读
-
[AUTOTITLE](/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts) -
[AUTOTITLE](/code-security/dependabot/dependabot-security-updates/about-dependabot-security-updates) -
[AUTOTITLE](/code-security/getting-started/auditing-security-alerts)