Wersje środowiska uruchomieniowego Deno od 1.18.0 do 1.20.2 (włącznie) zawierają podatność krytyczną umożliwiającą całkowite ominięcie systemu uprawnień. Atakujący kontrolujący kod wykonywany w ramach Deno runtime może wykonać dowolny shellcode bez żadnych ograniczeń.
▸ Pokaż oryginał (EN)
Deno is a runtime for JavaScript and TypeScript. The versions of Deno between release 1.18.0 and 1.20.2 (inclusive) are vulnerable to an attack where a malicious actor controlling the code executed in a Deno runtime could bypass all permission checks and execute arbitrary shell code. This vulnerability does not affect users of Deno Deploy. The vulnerability has been patched in Deno 1.20.3. There is no workaround. All users are recommended to upgrade to 1.20.3 immediately.
Deno posiada wbudowany model bezpieczeństwa oparty na jawnych uprawnieniach (np. dostęp do plików, sieci, środowiska). Podatność pozwala złośliwemu kodowi uruchamianemu wewnątrz środowiska Deno na obejście wszystkich mechanizmów weryfikacji uprawnień (CWE-269, CWE-863). W rezultacie kod, który powinien działać w izolowanym, ograniczonym środowisku, może swobodnie wykonywać operacje systemowe bez wymaganych zezwoleń. Atak możliwy jest zdalnie, bez uwierzytelnienia i interakcji użytkownika, co potwierdza maksymalny wynik CVSS 10.0.
Atakujący kontrolujący wykonywany kod może całkowicie obejść wszystkie mechanizmy uprawnień Deno i wykonać dowolny shellcode na hoście, co może prowadzić do pełnego przejęcia systemu, wycieku danych oraz naruszenia integralności środowiska.
Należy niezwłocznie zaktualizować Deno do wersji 1.20.3, w której podatność została załatana. Producent nie przewiduje żadnego obejścia (workaround) — jedynym rozwiązaniem jest aktualizacja.
Deno w wersjach od 1.18.0 do 1.20.2 (włącznie). Podatność nie dotyczy użytkowników Deno Deploy.
Podatność nie dotyczy platformy Deno Deploy. Producent jednoznacznie zaleca natychmiastową aktualizację do wersji 1.20.3 — brak dostępnych obejść.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HDeno
APPDeno1.18.0 – 1.20.3 (bez)
Powiązane podatności
Deno node:crypto — brak finalizacji szyfru umożliwia wielokrotne szyfrowanie
Deno 1.32.0: out-of-bound read/write przez Resizable ArrayBuffers
Obejście uprawnień sieciowych i systemu plików w Deno (import dynamiczny)
Deno is a JavaScript, TypeScript, and WebAssembly runtime. From 2.0.0 until 2.7.8, a flaw in Deno's Node.js tl...
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Prior to 2.7.14, Deno's permission system enforces ...