CVE-2026-73411
ŚrednieCVSS 6.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 27 - wyżej niż 27% wszystkich znanych CVE
Streszczenie
Shescape to prosta biblioteka do escapowania dla JavaScript. Przed wersjami 2.1.14 i 3.0.1, funkcja getEscapeFunction w src/internal/unix/dash.js nie escapuje znaku ~ po : lub =, gdy aplikacje używają API escape lub escapeAll na Unixie z shellem ustawionym na dash, lub z shellem ustawionym na true, gdy Dash jest domyślny, i interpolują wynik do przypisania poprzedzającego polecenie. Atakujący kontrolujący dane wejściowe może dostarczyć wartość taką jak :~, aby ujawnić ścieżkę katalogu domowego i może zmienić lokalizację, na której działa polecenie. Problem został naprawiony w wersjach 2.1.14 i 3.0.1.
Ocena ryzyka
Ryzyko obejmuje ujawnienie ścieżki katalogu domowego oraz możliwość zmiany lokalizacji działania polecenia, co może prowadzić do nieautoryzowanego dostępu do danych lub manipulacji.
Rekomendacja
Zaleca się aktualizację biblioteki Shescape do wersji 2.1.14 lub 3.0.1, które zawierają poprawkę.
Inne podatności w Shescape
Zobacz wszystkie- CVE-2026-73414Krytyczne
Shescape to prosta biblioteka do escapowania powłoki dla JavaScript. Przed wersjami 2.1.14 i 3.0.1, getEscapeFunction w src/internal/win/cmd.js nie escapuje znaków `(` i `)`, gdy aplikacje używają API escape lub escapeAll na Windows z powłoką ustawioną na cmd.exe, lub z powłoką ustawioną na true, gdy CMD jest domyślny. Argument kontrolowany przez atakującego może wyrwać się z konstrukcji CMD w nawiasach i wstrzyknąć składnię powłoki w zależności od oryginalnego polecenia, co prowadzi do wykonania dowolnego polecenia. Problem naprawiono w wersjach 2.1.14 i 3.0.1.
- CVE-2026-73055Średnie
Shescape przed wersją 2.1.15 (oraz 3.0.0 przed 3.0.2) nieprawidłowo escapuje znaki tyldy (~) w kontekstach przypisań na systemach Unix, gdzie powłoka jest jawnie skonfigurowana jako "sh" lub true, a /bin/sh wskazuje na BusyBox. Używając API escape i escapeAll z niezaufanym wejściem w przypisaniu poprzedzającym komendę, atakujący może wstrzyknąć ładunek tyldy, aby ujawnić lokalizację katalogu domowego użytkownika i, w zależności od użycia, zmienić lokalizację, na której działa komenda.
- CVE-2026-73413Wysokie
Shescape, biblioteka do escapowania powłoki dla JavaScript, w wersjach od 2.1.11 do 2.1.14 oraz 3.0.1, ma problem z wydajnością w pętli ochrony flag w funkcji compose. Przetwarzanie danych wejściowych o dużym rozmiarze zawierających wiele fragmentów flag staje się kwadratowe, co może prowadzić do przeciążenia CPU i odmowy usługi.
- CVE-2026-73412Średnie
Shescape to prosta biblioteka do escapowania dla JavaScript. Przed wersjami 2.1.14 i 3.0.1, podatność dotyczy użytkowników Shescape na systemach Unix, którzy jawnie skonfigurują shell na Zsh lub true, gdy domyślnym shellem jest Zsh, używając escape i escapeAll. Opcje Zsh EXTENDED_GLOB i MAGIC_EQUAL_SUBST pogarszają problem. W niektórych przypadkach atakujący może wykorzystać ekspansję katalogu domowego i składnię rozszerzonych globów, aby uzyskać listy plików i katalogów w systemie. W zależności od tego, co robi polecenie, może to być użyte do wycieku większej ilości informacji. Problem został naprawiony w wersjach 2.1.14 i 3.0.1.
- CVE-2023-35931Niskie
Shescape to prosta biblioteka do ucieczki ze shella dla JavaScript. Atakujący może uzyskać dostęp tylko do odczytu zmiennych środowiskowych. Błąd został naprawiony w wersji 1.7.1.
Oryginalny opis (angielski, źródło NVD)
Shescape is a simple shell escape library for JavaScript. Prior to 2.1.14 and 3.0.1, getEscapeFunction in src/internal/unix/dash.js fails to escape ~ after : or = when applications use the escape or escapeAll APIs on Unix with shell set to dash, or with shell set to true when Dash is the default, and interpolate the result into an assignment prefixed to a command. An attacker who controls the input can supply a value such as :~ to disclose the home-directory path and may change the location on which the command operates. This issue is fixed in versions 2.1.14 and 3.0.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

