Luka w Ghostscript możliwa do wykorzystania poprzez ImageMagick

Ghostscript, zestaw narzędzi do przetwarzania, konwertowania i generowania dokumentów w formatach PostScript i PDF, posiada krytyczną lukę (CVE-2021-3781), która umożliwia wykonanie dowolnego kodu podczas przetwarzania specjalnie sformatowanego pliku. Początkowo na problem zwrócił uwagę Emil Lerner, który wypowiadał się na temat luki 25 sierpnia na konferencji ZeroNights X w St. Petersburgu (w raporcie opisano, w jaki sposób Emil w ramach programów bug bounty wykorzystał lukę do otrzymać premie za demonstrowanie ataków na usługi AirBNB, Dropbox i Yandex.Real Estate).

5 września w domenie publicznej pojawił się działający exploit, który umożliwia atak na systemy z systemem Ubuntu 20.04 poprzez przesłanie specjalnie zaprojektowanego dokumentu załadowanego jako obraz do skryptu internetowego działającego na serwerze przy użyciu pakietu php-imagemagick. Co więcej, według wstępnych danych, podobny exploit był stosowany od marca. Twierdzono, że systemy działające pod kontrolą GhostScriptu 9.50 mogą zostać zaatakowane, okazało się jednak, że luka występowała we wszystkich kolejnych wersjach GhostScripta, włączając w to opracowywaną wersję 9.55 Gita.

Poprawka została zaproponowana 8 września i po wzajemnej recenzji została przyjęta do repozytorium GhostScript 9 września. W wielu dystrybucjach problem pozostaje nierozwiązany (status publikacji aktualizacji można zobaczyć na stronach Debiana, Ubuntu, Fedory, SUSE, RHEL, Arch Linux, FreeBSD, NetBSD). Wydanie GhostScriptu z poprawką usuwającą lukę planowane jest na koniec miesiąca.

Problem wynika z możliwości ominięcia trybu izolacji "-dSAFER" z powodu niewystarczającego sprawdzenia parametrów urządzenia Postscriptowego "%pipe%", co umożliwiło wykonanie dowolnych poleceń powłoki. Na przykład, aby uruchomić narzędzie id w dokumencie, po prostu określ wiersz „(%pipe%/tmp/&id)(w)file” lub „(%pipe%/tmp/;id)(r)file”.

Przypomnijmy, że luki w Ghostscript stanowią zwiększone zagrożenie, ponieważ pakiet ten jest używany w wielu popularnych aplikacjach do przetwarzania formatów PostScript i PDF. Na przykład Ghostscript jest wywoływany podczas tworzenia miniatur pulpitu, indeksowania danych w tle i konwersji obrazów. Do udanego ataku w wielu przypadkach wystarczy po prostu pobrać plik z exploitem lub przejrzeć katalog z nim w menadżerze plików obsługującym wyświetlanie miniatur dokumentów np. w Nautilusie.

Luki w Ghostscript można również wykorzystać poprzez procesory obrazu oparte na pakietach ImageMagick i GraphicsMagick, przesyłając im zamiast obrazu plik JPEG lub PNG zawierający kod PostScript (taki plik będzie przetwarzany w Ghostscript, ponieważ typ MIME jest rozpoznawany przez treści i bez polegania na rozszerzeniach).

Źródło: opennet.ru

Dodaj komentarz