Server-side request forgery in GitHub Enterprise Server
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
GitHub Enterprise Server 3.20, 3.21, and 3.22 are affected. The GCP service account secret scanning validator requests the token endpoint in a committed credential without restricting the destination (CWE-918). An authenticated user who can push to a repository can make the appliance request attacker-controlled internal hosts, which can be chained to achieve remote code execution. This requires secret scanning validity checks enabled, a non-default configuration.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
A Server-Side Request Forgery (SSRF) vulnerability was identified in GitHub Enterprise Server that allowed a repository contributor to cause the appliance to issue requests to attacker-controlled internal hosts, which could be chained to achieve remote code execution on the appliance. The secret scanning validator for GCP service account credentials trusted the token endpoint embedded in a committed credential and issued a request to it without restricting the destination. Exploitation required an authenticated user with permission to push to a repository on an instance with GitHub Advanced Security and secret scanning validity checks enabled, a non-default configuration. This vulnerability affected GitHub Enterprise Server 3.20, 3.21, and 3.22 and was fixed in versions 3.20.9, 3.21.7, and 3.22.2. This vulnerability was reported through the GitHub Bug Bounty program.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| GitHub | Enterprise Server | 3.20.0 and later; 3.21.0 and later; 3.22.0 and later | — | No fix listed | CNA |
- Enterprise Server VendorGitHub Affected 3.20.0 and later; 3.21.0 and later; 3.22.0 and later Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:github:enterprise_server:*:*:*:*:*:*:*:* | 3.20.0 to before 3.20.9; 3.21.0 to before 3.21.7; 3.22.0 to before 3.22.2 | Vulnerable | GitHub |
- cpe:2.3:a:github:enterprise_server:*:*:*:*:*:*:*:* Versions 3.20.0 to before 3.20.9; 3.21.0 to before 3.21.7; 3.22.0 to before 3.22.2 Vulnerable ·GitHub
Remediation
Upgrade to GitHub Enterprise Server 3.20.9, 3.21.7, or 3.22.2.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Timeline
- 2026-10-06 Threatist record created from CVE-2026-96890
- 2026-10-07 Alias added: GHSA-jv57-8h35-3r6r
- 2026-10-07 CISA SSVC decision points changed
- 2026-10-07 Priority changed: MEDIUM → LOW
- 2026-10-07 Priority changed: LOW → MEDIUM
- 2026-10-09 CVSS score added · NVD
References
More GitHub Enterprise Server vulnerabilities
- TI-2024-04632 An authentication bypass vulnerability was present in the GitHub Enterprise Server (GHES)… CVSS 4.0CRITICAL 10.0
- TI-2024-00181 Unsafe Reflection in Github Enterprise Server leading to Command Injection CVSS 3.1CRITICAL 9.8
- TI-2024-00466 Privilege Escalation by Code Injection in the Management Console in GitHub Enterprise Server CVSS 3.1HIGH 8.8
- TI-2026-03340 Remote code execution via git push option injection in GitHub Enterprise Server CVSS 4.0HIGH 8.7
- TI-2024-08804 Improper signature verification in GitHub Enterprise Server CVSS 4.0CRITICAL 9.5
- TI-2026-08177 Server-side request forgery in GitHub Enterprise Server CVSS 4.0CRITICAL 9.2
Sources
- CVE-2026-96890 · CVE Program
- CVE-2026-96890 · NVD
- FIRST EPSS
- GHSA-jv57-8h35-3r6r · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences