CRITICAL🇬🇧 English

CVE-2026-21636

Node.js: obejście modelu uprawnień przez Unix Domain Socket

CVSS 10.0v3.1pub. 2026-01-20upd. 2026-01-30

Błąd w modelu uprawnień Node.js pozwala na nawiązanie połączeń przez Unix Domain Socket (UDS) z pominięciem restrykcji sieciowych, nawet gdy flaga `--allow-net` nie jest ustawiona. Podatność umożliwia dostęp do uprzywilejowanych usług lokalnych, co może prowadzić do privilege escalation lub wykonania kodu.

Pokaż oryginał (EN)

A flaw in Node.js's permission model allows Unix Domain Socket (UDS) connections to bypass network restrictions when `--permission` is enabled. Even without `--allow-net`, attacker-controlled inputs (such as URLs or socketPath options) can connect to arbitrary local sockets via net, tls, or undici/fetch. This breaks the intended security boundary of the permission model and enables access to privileged local services, potentially leading to privilege escalation, data exposure, or local code execution. * The issue affects users of the Node.js permission model on version v25. In the moment of this vulnerability, network permissions (`--allow-net`) are still in the experimental phase.

🤖 Analiza AI
Jak działa

Gdy Node.js uruchamiany jest z flagą `--permission`, model uprawnień powinien blokować nieautoryzowane połączenia sieciowe. Jednak atakujący może dostarczyć kontrolowane przez siebie dane wejściowe (np. URL lub opcję `socketPath`), które za pośrednictwem modułów `net`, `tls` lub `undici`/`fetch` nawiązują połączenie z dowolnymi lokalnymi gniazdami UDS. Mechanizm Unix Domain Socket nie jest objęty wymuszaną przez `--allow-net` kontrolą dostępu, co skutkuje przełamaniem zamierzonej granicy bezpieczeństwa modelu uprawnień. Pozwala to na komunikację z uprzywilejowanymi usługami lokalnymi dostępnymi wyłącznie przez UDS.

Skutki

Atakujący może uzyskać nieautoryzowany dostęp do uprzywilejowanych usług lokalnych, co może skutkować privilege escalation, ujawnieniem wrażliwych danych lub lokalnym wykonaniem kodu (RCE/LPE).

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami (https://nodejs.org/en/blog/vulnerability/december-2025-security-releases). Do czasu aktualizacji należy unikać przekazywania niezaufanych danych wejściowych jako URL lub `socketPath` w aplikacjach uruchamianych z flagą `--permission`, a także ograniczyć dostęp do środowisk korzystających z Node.js v25.

Kogo dotyczy

Node.js w wersji v25 z włączonym modelem uprawnień (flaga `--permission`). Dotyczy środowisk działających na systemach Unix/Linux korzystających z Unix Domain Sockets.

Uwagi

Zgodnie z opisem w chwili ujawnienia podatności uprawnienia sieciowe (`--allow-net`) nadal mają status eksperymentalny w Node.js. Podatność dotyczy wyłącznie wersji v25.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
  • Node.js

    APP
    Nodejs
    25.0.0 – 25.3.0 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCELPE
CWE
Referencje

Powiązane podatności

CVE-2026-48930CRITICAL9.8PL ✓ten sam produkt

Node.js TLS: błąd obsługi hostname z null-bajtem prowadzi do przekierowania authority

CVE-2025-55130CRITICAL9.1PL ✓ten sam produkt

Obejście modelu uprawnień w Node.js poprzez spreparowane symlinki

CVE-2024-3566CRITICAL9.8PL ✓ten sam produkt

Command injection w aplikacjach Windows korzystających z CreateProcess

CVE-2024-21896CRITICAL9.8PL ✓ten sam produkt

Path traversal w Permission Model Node.js przez monkey-patching Buffer

CVE-2023-39332CRITICAL9.8ten sam produkt

Various `node:fs` functions allow specifying paths as either strings or `Uint8Array` objects. In Node.js envir...