Git's `git apply` overwriting paths outside the working tree
- 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
- Fix
- Fixed in 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, and 5 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
Git, a revision control system, is vulnerable to path traversal prior to versions 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7, and 2.30.8. By feeding a crafted input to `git apply`, a path outside the working tree can be overwritten as the user who is running `git apply`. A fix has been prepared and will appear in v2.39.2, v2.38.4, v2.37.6, v2.36.5, v2.35.7, v2.34.7, v2.33.7, v2.32.6, v2.31.7, and v2.30.8. As a workaround, use `git apply --stat` to inspect a patch before applying; avoid applying one that creates a symbolic link and then creates a file beyond the symbolic link.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- git git
From 2.39.0 · fixed in 2.39.2; From 2.38.0 · fixed in 2.38.4; From 2.37.0 · fixed in 2.37.6; From 2.36.0 · fixed in 2.36.5; From 2.35.0 · fixed in 2.35.7; From 2.34.0 · fixed in 2.34.7; From 2.33.0 · fixed in 2.33.7; From 2.32.0 · fixed in 2.32.6; From 2.31.0 · fixed in 2.31.7; fixed in 2.30.8