CVE-2025-59046 interactive-git-checkout has Command Injection vulnerability
Attackers can execute arbitrary commands via unsanitized branch names in the interactive-git-checkout npm package.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2025-59046?
CVE-2025-59046 is a critical command injection vulnerability in ninofiliu interactive-git-checkout, published on 9 Sep 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The npm package `interactive-git-checkout` is an interactive command-line tool that allows users to checkout a git branch while it prompts for the branch name on the command-line. It is available as an npm package and can be installed via `npm install -g interactive-git-checkout`. Versions up to and including 1.1.4 of the `interactive-git-checkout` tool are vulnerable to a command injection vulnerability because the software passes the branch name to the `git checkout` command using the Node.js child process module's `exec()` function without proper input validation or sanitization. Commit 8dd832dd302af287a61611f4f85e157cd1c6bb41 fixes the issue.
Weakness: CWE-77
Which versions are affected by CVE-2025-59046?
2 open source packages ship an affected version, including interactive-git-checkout.
| Package | Affected | Fixed in |
|---|---|---|
interactive-git-checkout npm | All versions to 1.1.4 | None |
interactive-git-checkout npm | All versions to 1.1.4 | None |
How do I fix CVE-2025-59046?
No fix has been published for CVE-2025-59046 yet. Limit exposure of the affected software until one is available.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is CVE-2025-59046 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-59046 exists.
Sources
Also known as GHSA-4wcm-7hjf-6xw5.