Remote code execution via git push option injection in GitHub Enterprise Server
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- 7 proofs of concept on GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
An improper neutralization of special elements vulnerability was identified in GitHub Enterprise Server that allowed an attacker with push access to a repository to achieve remote code execution on the instance. During a git push operation, user-supplied push option values were not properly sanitized before being included in internal service headers. Because the internal header format used a delimiter character that could also appear in user input, an attacker could inject additional metadata fields through crafted push option values. This vulnerability was reported via the GitHub Bug Bounty program and has been fixed in GitHub Enterprise Server versions 3.14.25, 3.15.20, 3.16.16, 3.17.13, 3.18.7 and 3.19.4.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
- EPSS reached 10%
FIRST estimates at least a 10% chance of exploitation in the next 30 days
Affected versions
- GitHub Enterprise Server
From 3.14.0 · through 3.14.24; From 3.15.0 · through 3.15.19; From 3.16.0 · through 3.16.15; From 3.17.0 · through 3.17.12; From 3.18.0 · through 3.18.6; From 3.19.0 · through 3.19.3
References 13
docs.github.com
- en/enterprise-server@3.14/admin/release-notes#3.14.25
- en/enterprise-server@3.15/admin/release-notes#3.15.20
- en/enterprise-server@3.16/admin/release-notes#3.16.16
- en/enterprise-server@3.17/admin/release-notes#3.17.13
- en/enterprise-server@3.18/admin/release-notes#3.18.7
- en/enterprise-server@3.19/admin/release-notes#3.19.4