Analysis and contextual insights are available on OpenCVE Cloud.
No vendor fix or workaround currently provided.
Additional remediation guidance may be available on OpenCVE Cloud.
Tracking
Sign in to view the affected projects.
| Source | ID | Title |
|---|---|---|
Debian DSA |
DSA-6300-1 | node-shell-quote security update |
Github GHSA |
GHSA-w7jw-789q-3m8p | shell-quote quote() does not escape newlines in object .op values |
Ubuntu USN |
USN-8410-1 | shell-quote vulnerability |
Tue, 26 May 2026 13:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Mon, 25 May 2026 12:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Ljharb
Ljharb shell-quote |
|
| Vendors & Products |
Ljharb
Ljharb shell-quote |
|
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
Fri, 22 May 2026 15:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Fri, 22 May 2026 13:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | shell-quote's `quote()` function did not validate object-token inputs against the operator model used by `parse()`. The `.op` field was backslash-escaped character by character using `/(.)/g`, which in JavaScript does not match line terminators (\n, \r, U+2028, U+2029). A line terminator in `.op` therefore passed through unescaped into the output; POSIX shells treat a literal newline as a command separator, so any content after it would execute as a second command. The vulnerable code path is reachable in two ways: (1) direct construction of `{ op: '...\n...' }` from external input, and (2) via `parse(cmd, envFn)` when `envFn` returns object tokens whose `.op` is attacker-influenced. Both are documented API surface. Fixed by replacing the per-character escape with strict shape validation: `.op` must match the parser's control-operator allowlist; `{ op: 'glob', pattern }` validates `pattern` and forbids line terminators; `{ comment }` validates `comment` and forbids line terminators; any other object shape throws `TypeError`. | |
| Title | shell-quote `quote()` does not validate object-token shapes, allowing command injection via line terminators in `.op` | |
| Weaknesses | CWE-77 CWE-78 |
|
| References |
| |
| Metrics |
cvssV3_1
|
Status: PUBLISHED
Assigner: harborist
Published:
Updated: 2026-05-23T03:04:40.537Z
Reserved: 2026-05-22T12:13:25.893Z
Link: CVE-2026-9277
Updated: 2026-05-22T14:17:25.193Z
Status : Deferred
Published: 2026-05-22T14:16:30.330
Modified: 2026-06-17T11:05:00.067
Link: CVE-2026-9277
OpenCVE Enrichment
Updated: 2026-05-25T11:34:21Z
Debian DSA
Github GHSA
Ubuntu USN