| Titre | Node.js @publint/pack 0.1.4 OS Command Injection |
|---|
| Description | @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 }) |
|---|
| La source | ⚠️ https://github.com/publint/publint/issues/236 |
|---|
| Utilisateur | wjm2 (UID 99050) |
|---|
| Soumission | 16/06/2026 20:18 (il y a 4 mois) |
|---|
| Modérer | 22/07/2026 18:08 (1 month later) |
|---|
| Statut | Accepté |
|---|
| Entrée VulDB | 382381 [publint jusqu’à 0.1.4 package-manager Command src/node/pack.js child_process.exec élévation de privilèges] |
|---|
| Points | 20 |
|---|