When your code depends on a package that has a security vulnerability, this vulnerable dependency can cause a range of problems for your project or the people who use it.
Dependabot performs a scan to detect vulnerable dependencies and sends Dependabot 警报 when:
A new vulnerability is added to the GitHub Advisory Database. For more information, see "Browsing security vulnerabilities in the GitHub Advisory Database" and "About GitHub Security Advisories."
Note: Only advisories that have been reviewed by GitHub will trigger Dependabot 警报.
The dependency graph for a repository changes. For example, when a contributor pushes a commit to change the packages or versions it depends on, or when the code of one of the dependencies changes. For more information, see "About the dependency graph."
此外， GitHub 可以查看在针对仓库默认分支的拉取请求中添加、更新或删除的任何依赖项，并标记任何将漏洞引入项目的变化。 这允许您在易受攻击的依赖项到达您的代码库之前发现并处理它们，而不是事后处理。 更多信息请参阅“审查拉取请求中的依赖项更改”。
For a list of the ecosystems that GitHub can detect vulnerabilities and dependencies for, see "Supported package ecosystems."
Note: It is important to keep your manifest and lock files up to date. If the dependency graph doesn't accurately reflect your current dependencies and versions, then you could miss alerts for vulnerable dependencies that you use. You may also get alerts for dependencies that you no longer use.
GitHub detects vulnerable dependencies in public repositories and generates Dependabot 警报 by default. Owners of private repositories, or people with admin access, can enable Dependabot 警报 by enabling the dependency graph and Dependabot 警报 for their repositories.
You can also enable or disable Dependabot 警报 for all repositories owned by your user account or organization. For more information, see "Managing security and analysis settings for your user account" or "Managing security and analysis settings for your organization."
For information about access requirements for actions related to Dependabot 警报, see "Repository roles for an organization."
GitHub starts generating the dependency graph immediately and generates alerts for any vulnerable dependencies as soon as they are identified. The graph is usually populated within minutes but this may take longer for repositories with many dependencies. For more information, see "Managing data use settings for your private repository."
When GitHub identifies a vulnerable dependency, we generate a Dependabot alert and display it on the Security tab for the repository and in the repository's dependency graph. The alert includes a link to the affected file in the project, and information about a fixed version. GitHub may also notify the maintainers of affected repositories about the new alert according to their notification preferences. For more information, see "Configuring notifications for vulnerable dependencies."
For repositories where Dependabot 安全更新 are enabled, the alert may also contain a link to a pull request to update the manifest or lock file to the minimum version that resolves the vulnerability. For more information, see "About Dependabot 安全更新."
Note: GitHub's security features do not claim to catch all vulnerabilities. Though we are always trying to update our vulnerability database and generate alerts with our most up-to-date information, we will not be able to catch everything or tell you about known vulnerabilities within a guaranteed time frame. These features are not substitutes for human review of each dependency for potential vulnerabilities or any other issues, and we recommend consulting with a security service or conducting a thorough vulnerability review when necessary.
You can see all of the alerts that affect a particular project on the repository's Security tab or in the repository's dependency graph. For more information, see "Viewing and updating vulnerable dependencies in your repository."
By default, we notify people with admin permissions in the affected repositories about new Dependabot 警报. GitHub never publicly discloses identified vulnerabilities for any repository. You can also make Dependabot 警报 visible to additional people or teams working repositories that you own or have admin permissions for. For more information, see "Managing security and analysis settings for your repository."
To receive notifications about Dependabot 警报 on repositories, you need to watch these repositories, and subscribe to receive "All Activity" notifications or configure custom settings to include "Security alerts." For more information, see "Configuring your watch settings for an individual repository."
You can choose the delivery method for notifications, as well as the frequency at which the notifications are sent to you. For more information, see "Configuring notifications for vulnerable dependencies."