CVE-2025-61787
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 81 - wyżej niż 81% wszystkich znanych CVE
Streszczenie
Deno w wersjach przed 2.5.3 i 2.2.15 jest podatny na ataki polegające na wstrzyknięciu poleceń w systemie Windows podczas wykonywania plików wsadowych. W systemie Windows funkcja CreateProcess() zawsze uruchamia cmd.exe dla plików .bat lub .cmd, nawet jeśli nie jest to określone w wywołaniu, co umożliwia atak wstrzyknięcia poleceń.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do wykonania dowolnych poleceń na systemie Windows, co może prowadzić do przejęcia kontroli nad maszyną i naruszenia bezpieczeństwa.
Rekomendacja
Zaleca się aktualizację Deno do wersji 2.5.3 lub 2.2.15, które zawierają poprawkę, oraz unikanie wykonywania niezweryfikowanych plików wsadowych.
Inne podatności w Deno
Zobacz wszystkie- CVE-2026-22864Wysokie
Deno to środowisko uruchomieniowe dla JavaScript, TypeScript i WebAssembly. Przed wersją 2.5.6, wcześniejsza poprawka mająca blokować uruchamianie plików wsadowych/shell systemu Windows poprzez zwracanie błędu, gdy rozszerzenie ścieżki uruchamianego pliku odpowiadało .bat lub .cmd, była niewystarczająca. To sprawdzenie wykonuje porównanie uwzględniające wielkość liter z małymi literami, więc może zostać ominięte, gdy rozszerzenie używa alternatywnej wielkości liter (np. .BAT, .Bat itp.). Ta podatność jest naprawiona w wersji 2.5.6.
- CVE-2026-22863Wysokie
Deno to środowisko uruchomieniowe dla JavaScript, TypeScript i WebAssembly. Przed wersją 2.6.0, moduł node:crypto nie finalizuje szyfrowania. Ta podatność pozwala atakującemu na nieskończone szyfrowanie, co może prowadzić do naiwnych prób brute force oraz bardziej wyrafinowanych ataków mających na celu poznanie sekretów serwera. Podatność jest naprawiona w wersji 2.6.0.
- CVE-2026-103473Wysokie
Deno w wersjach 2.7.0 do 2.9.7 na Windows zawiera podatność na wstrzyknięcie komend w node:child_process, gdzie argumenty powłoki są escapowane dla niewłaściwego typu powłoki. Atakujący mogą wstrzyknąć komendy systemowe, przekazując niezaufane argumenty z opcją shell, co pozwala na wykonanie dowolnych komend z uprawnieniami procesu Deno.
- CVE-2026-55517Średnie
Podatność w Deno przed wersją 2.7.5 umożliwia zdalnemu serwerowi WebSocket spowodowanie awarii procesu Deno poprzez wysłanie odpowiedzi z nagłówkami Sec-WebSocket-Protocol lub Sec-WebSocket-Extensions zawierającymi nie-drukowalne znaki ASCII (0x80-0xFF). Błąd wynika z nieprawidłowego parsowania tych nagłówków, co prowadzi do paniki i zatrzymania całego procesu.
- CVE-2026-49983Średnie
W Deno przed wersją 2.8.1 funkcja process.loadEnvFile() nie respektuje ograniczeń uprawnień środowiskowych (--deny-env). Pozwala to na zapisanie zmiennych z pliku .env do procesu nawet gdy dostęp do środowiska jest zabroniony.
- CVE-2026-49860Średnie
W Deno przed wersją 2.8.1, podczas nawiązywania połączenia WebSocket, sprawdzano tylko nazwę hosta docelowego względem reguł --deny-net, ale nie weryfikowano adresów IP, na które ta nazwa się rozwiązywała. Skrypt atakującego może użyć specjalnie spreparowanej domeny, która przechodzi kontrolę nazwy hosta, ale rozwiązuje się na zabroniony adres IP, całkowicie omijając ograniczenia sieciowe.
- CVE-2026-49859Średnie
W Deno przed wersją 2.8.1 funkcja fetch() sprawdzała nazwę hosta docelowego względem reguł --deny-net, ale nie weryfikowała adresów IP, na które ta nazwa została rozwiązana. Skrypt atakującego mógł użyć specjalnie spreparowanej domeny, która przechodzi kontrolę nazwy hosta, ale rozwiązuje się na zabroniony adres IP, całkowicie omijając ograniczenia sieciowe.
- CVE-2025-61786Niskie
W wersjach Deno przed 2.5.3 i 2.2.15, funkcje `Deno.FsFile.prototype.stat` i `Deno.FsFile.prototype.statSync` nie są ograniczane przez model uprawnień `--deny-read=./`. Umożliwia to pobranie statystyk plików, do których użytkownik nie ma jawnego dostępu do odczytu, nawet gdy skrypt jest wykonywany z `--deny-read=./`. Wersje 2.5.3 i 2.2.15 naprawiają ten problem.
- CVE-2025-61785Niskie
W wersjach Deno przed 2.5.3 i 2.2.15, funkcje `Deno.FsFile.prototype.utime` i `Deno.FsFile.prototype.utimeSync` nie są ograniczane przez model uprawnień `--deny-write=./`. Umożliwia to zmianę czasu dostępu (`atime`) i modyfikacji (`mtime`) pliku, nawet gdy plik jest otwarty tylko do odczytu i operacje zapisu są zabronione. Wersje 2.5.3 i 2.2.15 naprawiają ten problem.
Oryginalny opis (angielski, źródło NVD)
Deno is a JavaScript, TypeScript, and WebAssembly runtime. Versions prior to 2.5.3 and 2.2.15 are vulnerable to Command Line Injection attacks on Windows when batch files are executed. In Windows, ``CreateProcess()`` always implicitly spawns ``cmd.exe`` if a batch file (.bat, .cmd, etc.) is being executed even if the application does not specify it via the command line. This makes Deno vulnerable to a command injection attack on Windows. Versions 2.5.3 and 2.2.15 fix the issue.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

