Podatności PostCSS
3 znanych podatności CVE w PostCSS, przetłumaczonych i ocenionych.
- CVE-2026-73646Wysokie
W PostCSS przed wersją 8.5.18 funkcja loadMap() w lib/previous-map.js przekazuje kontrolowane przez atakującego wartości sourceMappingURL do join(dirname(opts.from), annotation), a loadFile() pozwala na ścieżki .map z traversalem lub absolutne, co umożliwia ujawnienie sourcesContent z dowolnych osiągalnych plików .map przez result.map, gdy przetwarzany jest niezaufany CSS bez opcji map: false.
- CVE-2026-69153Średnie
PostCSS przed wersją 8.5.19 zawiera podatność, w której jeśli opcja from nie jest ustawiona, atakujący może spowodować, że funkcja PreviousMap.loadFile() odczyta nieprzeznaczony plik mapy źródłowej, podając absolutny lub zawierający traversal katalogów sourceMappingURL. Wynikowe źródła i zawartość źródeł mapy mogą zostać ujawnione aplikacji.
- CVE-2026-45623Wysokie
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.

