CVE-2021-21237GHSA-CX3W-XQMC-84G5BIT-GIT-LFS-2021-21237GO-2021-0098
Git LFS can execute a Git binary from the current directory on Windows
- 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.13.2, 1.5.1-0.20210113180018-fc664697ed2c
- 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
Summary
Git LFS is a command line extension for managing large files with Git. On Windows, if Git LFS operates on a malicious repository with a git.bat or git.exe file in the current directory, that program would be executed, permitting the attacker to execute arbitrary code. This does not affect Unix systems. This is the result of an incomplete fix for CVE-2020-27955. This issue occurs because on Windows, Go includes (and prefers) the current directory when the name of a command run does not contain a directory separator. Other than avoiding untrusted repositories or using a different operating system, there is no workaround. This is fixed in v2.13.2.
Timeline
- CVE published
- Record last updated
Affected versions
- git-lfs git-lfs
fixed in 2.13.2
- github.com/git-lfs/git-lfsGo
fixed in 2.13.2
- github.com/git-lfs/git-lfsGo
fixed in 1.5.1-0.20210113180018-fc664697ed2c