CVE-2026-102422 in shell-quote
Riassunto
di VulDB • 29/09/2026
La funzione `quote()` di shell-quote emette un token `{ comment }` come `#` seguito dal suo testo, che commenta il resto della riga del terminale, inclusa la virgoletta aperta di qualsiasi successivo token stringa. Un terminatore di riga (\n, \r, U+2028, U+2029) in quella stringa successiva termina quindi il commento e il resto della stringa viene analizzato come input per il terminale: `quote(['echo', 'ok', { comment: 'x' }, 'a\nid;#'])` esegue `id` su sh, bash, dash, ksh e zsh. La funzione `parse()` emette un token di commento per un `#` nel mezzo di una parola (ad esempio `http://example.com/#frag`), quindi i chiamanti che combinano l'output di `parse()` con un'altra stringa non attendibile, come `quote(parse(untrustedCommand).concat(untrustedArg))`, sono interessati. La correzione per CVE-2026-9277 ha rifiutato i terminatori di riga nel testo stesso del commento, ma non nei token successivi ad esso. Risolto nella versione 1.11.0: `quote()` genera un `TypeError` quando una stringa dopo un token `{ comment }` contiene un terminatore di riga.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.