| 标题 | Node.js @publint/pack 0.1.4 OS Command Injection |
|---|
| 描述 | @publint/pack constructs package-manager commands as shell strings and executes them with child_process.exec().
The documented destination option is interpolated directly into the shell command. Because the command is executed by a shell, command substitution in the destination path is evaluated.
Tested version:
@publint/pack 0.1.4
Public API used:
import { pack } from '@publint/pack'
Relevant code path:
// src/node/pack.js
let command = `${packageManager} pack`
// ...
command += ` --pack-destination \"${packDestination}\"`
const output = await util.promisify(cp.exec)(command, { cwd: dir }) |
|---|
| 来源 | ⚠️ https://github.com/publint/publint/issues/236 |
|---|
| 用户 | wjm2 (UID 99050) |
|---|
| 提交 | 2026-06-16 20時18分 (1 月前) |
|---|
| 管理 | 2026-07-22 18時08分 (1 month later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 382381 [publint 直到 0.1.4 package-manager Command src/node/pack.js child_process.exec 权限提升] |
|---|
| 积分 | 20 |
|---|