| 标题 | Node.js danger 13.0.7 OS Command Injection |
|---|
| 描述 | [email protected] appears to allow shell command injection during the public danger local workflow when a Dangerfile calls danger.git.diffForFile() on changed file paths.
The issue is triggered through the CLI, not by importing internal modules directly:
danger local --staging --dangerfile Dangerfile.js --text-only
-> LocalGit.getPlatformGitRepresentation()
-> Dangerfile calls danger.git.diffForFile(file)
-> localGetFileAtSHA(file, repo, sha)
-> child_process.exec(`git show ${sha}:"${path}"`)
If a changed file path contains a double quote and shell metacharacters, the path breaks out of the quoted git show argument and the shell executes the injected command. |
|---|
| 来源 | ⚠️ https://github.com/danger/danger-js/pull/1513 |
|---|
| 用户 | wjm2 (UID 99050) |
|---|
| 提交 | 2026-06-16 19時20分 (1 月前) |
|---|
| 管理 | 2026-07-22 18時02分 (1 month later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 382377 [danger danger-js 直到 13.0.7 CLI localGetFileAtSHA.ts danger.git.diffForFile 文件 权限提升] |
|---|
| 积分 | 20 |
|---|