Skip to content

What is a GHSA (GitHub Security Advisory)?

Last reviewed June 2, 2026

A GHSA (GitHub Security Advisory) is a vulnerability record in the GitHub Advisory Database, identified by an ID of the form GHSA-xxxx-xxxx-xxxx. GHSA records describe vulnerabilities in open-source packages and power features such as Dependabot alerts. A GHSA often maps to a CVE, but the two identifiers coexist and serve different parts of the ecosystem.

GHSA in one sentence

GHSA stands for GitHub Security Advisory. It is both a type of vulnerability record published by GitHub and the identifier attached to that record, written in the form GHSA-xxxx-xxxx-xxxx (four characters in each of three groups).

GHSA records focus on vulnerabilities in software packages, especially the open-source dependencies hosted on or installed through ecosystems that GitHub tracks, such as npm, PyPI, Maven, RubyGems, Go, and others.

The GitHub Advisory Database

GHSA records live in the GitHub Advisory Database, a free, publicly browsable collection of security advisories for open-source software. Each entry describes the affected package, the vulnerable and patched version ranges, severity, and references.

The database is curated by GitHub and supplemented by community contributions. It is also published in a machine-readable form, which lets other tools and databases ingest and reuse the data.

How GHSA IDs relate to CVE IDs

A GHSA ID and a CVE ID are not competitors; they describe the same vulnerability from different angles. GitHub is an authorized CVE Numbering Authority (CNA), so it can assign CVE IDs as well as GHSA IDs.

In practice, many advisories carry both: the CVE ID is the global, cross-vendor name for the flaw, while the GHSA ID is GitHub's record that adds package-specific, ecosystem-aware detail such as exact affected version ranges. A GHSA may also exist before a CVE is assigned, or for issues that never receive a CVE.

GHSA and CVE at a glance
AspectGHSA IDCVE ID
FormatGHSA-xxxx-xxxx-xxxxCVE-YYYY-NNNN
Issued byGitHubAny CVE Numbering Authority (CNA)
ScopeOpen-source packages in tracked ecosystemsAny software, firmware, or hardware
StrengthPrecise package and version dataGlobal, vendor-neutral identifier

How GHSA powers Dependabot

The practical payoff of GHSA is automation. GitHub uses the Advisory Database to drive Dependabot, which scans a repository's manifest and lock files, compares the declared dependency versions against GHSA affected-version ranges, and raises alerts when a project depends on a vulnerable package.

Dependabot can then open pull requests that bump the affected dependency to a patched version. Because the matching is keyed on GHSA records with precise version ranges, the alerts can point directly at the upgrade that resolves the issue.

Keep exploring

Frequently asked questions

What does a GHSA ID look like?
A GHSA ID has the form GHSA-xxxx-xxxx-xxxx, with four alphanumeric characters in each of three dash-separated groups, for example GHSA-jfh8-c2jp-5v3q.
Is a GHSA the same as a CVE?
No, but they often describe the same vulnerability. The CVE ID is the global, vendor-neutral name, while the GHSA ID is GitHub's record with ecosystem-specific package and version detail. Many advisories carry both.
Can a GHSA exist without a CVE?
Yes. GitHub can publish a GHSA before a CVE is assigned, and some package-level issues receive a GHSA but never get a CVE.
What is the GitHub Advisory Database used for?
It is a free, machine-readable collection of open-source vulnerability advisories. It powers Dependabot alerts and is also reused by aggregators such as OSV.