CVE-2025-11148 check-branches is vulnerable to command Injection
Attackers can execute arbitrary commands by crafting malicious git branch names, affecting users of the check-branches 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-11148?
CVE-2025-11148 is a critical command injection vulnerability in check-branches, published on 30 Sep 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
All versions of the package check-branches are vulnerable to Command Injection check-branches is a command-line tool that is interacted with locally, or via CI, to confirm no conflicts exist in git branches. However, the library follows these conventions which can be abused: 1. It trusts branch names as they are (plain text) 2. It spawns git commands by concatenating user input Since a branch name is potentially a user input - as users can create branches remotely via pull requests, or simply due to privileged access to a repository - it can effectively be abused to run any command.
Weakness: CWE-78
Which versions are affected by CVE-2025-11148?
2 open source packages ship an affected version, including check-branches.
| Package | Affected | Fixed in |
|---|---|---|
check-branches npm | All versions to 0.0.19 | None |
check-branches npm | All versions to 0.0.19 | None |
How do I fix CVE-2025-11148?
No fix has been published for CVE-2025-11148 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-11148 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-11148 exists.
Sources
Also known as GHSA-9c4g-fp4r-prrv.