Katalog CVE

CVE-2026-45623

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.61%

Percentyl 46 - wyżej niż 46% wszystkich znanych CVE

Streszczenie

PostCSS w wersjach do 8.5.11 zawiera podatność polegającą na tym, że parser PreviousMap odczytuje komentarz /*# sourceMappingURL=PATH */ z dowolnego ciągu CSS przekazanego do process() i dereferencjonuje PATH względem lokalnego systemu plików bez sprawdzania schematu, listy dozwolonych ścieżek ani zabezpieczeń przed przechodzeniem do katalogów nadrzędnych. Atakujący kontrolujący dane wejściowe CSS może spowodować odczytanie przez proces hosta dowolnego pliku czytelnego dla Node i wyciek pierwszych ~10 bajtów jego zawartości poprzez komunikat błędu JSON.parse SyntaxError. Błąd umożliwia również precyzyjne sprawdzenie istnienia pliku oraz prymityw kontrolowanego odczytu, który w połączeniu z dużymi plikami może prowadzić do DoS. Podatność jest wyzwalana przy domyślnych ustawieniach PostCSS i jest osiągalna z każdego potoku przetwarzającego niezaufany CSS przez PostCSS.

Ocena ryzyka

Organizacja może doświadczyć wycieku wrażliwych danych (np. plików konfiguracyjnych, kluczy) oraz ataku typu Denial of Service poprzez odczyt dużych plików. Podatność jest szczególnie niebezpieczna w środowiskach przetwarzających CSS od użytkowników, takich jak CMS, przeglądarki rozszerzeń czy potoki CI/CD.

Rekomendacja

Należy natychmiast zaktualizować PostCSS do wersji 8.5.12 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy unikać przetwarzania niezaufanego CSS przez PostCSS lub zastosować dodatkowe zabezpieczenia, takie jak walidacja ścieżek.

Inne podatności w PostCSS

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

PostCSS takes a CSS file and provides an API to analyze and modify its rules by transforming the rules into an Abstract Syntax Tree. In versions 8.5.11 and prior, the PreviousMap parses the /*# sourceMappingURL=PATH */ comment from any CSS string passed to process() and dereferences PATH against the local filesystem with no scheme, allowlist, or traversal check. An attacker who controls the CSS input can cause the host process to read any file readable by Node and leak the first ~10 bytes of its content through the resulting JSON.parse SyntaxError message. The bug also yields a precise file-existence oracle and a controllable-read primitive that may be combined with large-file targets for DoS. The behaviour is triggered with PostCSS's default options — no from, no map, no plugins required — and is therefore reachable from any pipeline that runs untrusted CSS through PostCSS (CMS themes, user-uploaded styles, browser-extension/userstyle processors, build pipelines for third-party packages, blog comment renderers, etc.). This issue has been fixed in version 8.5.12.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS