| 标题 | Node.js find-cypress-specs 1.54.12 OS Command Injection |
|---|
| 描述 | find-cypress-specs accepts a --branch option to print specs changed against origin/<branch>.
The --branch value is interpolated directly into shell command strings and executed with shell.exec(). A branch name containing shell metacharacters can therefore execute additional commands.
Tested version:
find-cypress-specs 1.54.12
Public CLI used:
npx find-cypress-specs --branch <branch>
Relevant code:
// src/index.js
shell.exec(`git merge-base origin/${branch} HEAD`, {
silent: true,
})
// ...
const command = `git diff --name-only --diff-filter=AMR origin/${branch}`
const result = shell.exec(command, { silent: true })
The README documents --branch as a normal branch-name parameter:
npx find-cypress-specs --branch main |
|---|
| 来源 | ⚠️ https://github.com/bahmutov/find-cypress-specs/issues/423 |
|---|
| 用户 | wjm2 (UID 99050) |
|---|
| 提交 | 2026-06-17 08時41分 (1 月前) |
|---|
| 管理 | 2026-07-23 09時37分 (1 month later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 382478 [bahmutov find-cypress-specs 直到 1.54.12 Branch src/index.js shell.exec --branch 权限提升] |
|---|
| 积分 | 20 |
|---|