Security
Securing software, together
We all play a role in securing the world’s code—developers, maintainers, researchers, and security teams. On GitHub, teams work together to secure the world’s software at every step.
Ready to talk about advanced security features for GitHub Enterprise?
Contact SalesIdentify
Find security issues as you code
Write safer code from day one with end-to-end security. GitHub helps you address vulnerabilities earlier and ship secure applications.
Shift security left
Build securely without slowing down innovation. Automated security always works for you by scanning code as it's created.
Code as data
While fuzzing or inspecting code manually is great for finding specific vulnerabilities, this approach doesn’t scale to cover your entire codebase. CodeQL treats code as data and encodes vulnerabilities as queries—making it possible to find every instance of a bug in a codebase, a portfolio, or the entire open source software ecosystem.
Community-led approach
CodeQL ships with thousands of queries written by GitHub and the world’s leading security researchers. Code scanning queries are open source so developers, maintainers, and security teams can build on existing queries or create their own.
Disclose
Defining the open source security workflow
Open source powers the world’s software. GitHub provides the infrastructure security researchers and open source maintainers need to report and disclose security vulnerabilities.
Organization-wide security policies
A repository’s `SECURITY.MD` file describes everything researchers and users need to report a potential vulnerability. Maintainers can create per-project policies or automatically apply one security policy to every repository in their organization.
Responsible vulnerability reporting
Open source maintainers set security policies for their projects, letting their communities know the best way to responsibly report vulnerabilities.
Fix
GitHub Security Advisories
Open source maintainers have a secure and private space to work through vulnerabilities together. They collaborate on fixes and publish security advisories to the developer community that relies on their projects without leaving GitHub—or tipping off would-be hackers.
Private collaboration for maintainers
Before they send out public advisories, maintainers privately discuss the impact of a vulnerability in draft advisories. They collaborate in temporary private forks, and then publish advisories to alert and update the entire ecosystem.
Securing repositories and their dependents
The GitHub Advisory Database serves as the single source of truth for open source security issues with 1800-plus advisories reported so far. Since launching the database in 2019, open source projects have relied on GitHub to publish security advisories and notify all dependent repositories.
CVEs issued by GitHub
Common Vulnerabilities and Exposures (CVEs) allow anyone to reference a vulnerability and its fix anywhere, including the GitHub Advisory Database and the National Vulnerability Database. GitHub can now issue CVEs for any public repository, making it easier for security researchers and maintainers to create CVEs and keep our community safe.
Alert
Dependabot alerts
GitHub reviews every security vulnerability to identify and alert affected repositories. For project owners, we’ll always share the details you need to understand and remediate risks with confidence.
Rich vulnerability data
GitHub tracks vulnerabilities in packages from supported package managers using data from security researchers, maintainers, and the National Vulnerability Database— including release notes, changelog entries, and commit details. All discoverable in the GitHub Advisory Database.
Helping everyone stay secure
GitHub continuously scans security advisories for popular languages. We send Dependabot alerts to maintainers of affected repositories with details on the severity level and a link to relevant files.
Update
Update vulnerable
dependencies, automatically
Identifying security vulnerabilities is only half the challenge—but project owners can update vulnerable dependencies faster than ever with Dependabot security updates.
Automated pull requests for security updates
Dependabot security updates keep your projects secure and up to date by monitoring them for vulnerable components. If a vulnerability is found, we’ll automatically open a pull request with suggested fixes—and share compatibility scores based on community tests so you can see the impact of proposed changes before merging.