Ranjivost u zlibu koja se javlja prilikom komprimiranja posebno dizajniranih podataka

Ranjivost (CVE-2018-25032) identificirana je u biblioteci zlib, što dovodi do prekoračenja međuspremnika pri pokušaju komprimiranja posebno pripremljenog niza znakova u dolaznim podacima. U sadašnjem obliku, istraživači su pokazali sposobnost da izazovu abnormalni prekid procesa. Može li problem imati ozbiljnije posljedice, još nije ispitano.

Ranjivost se pojavljuje počevši od verzije zlib 1.2.2.2 i također utječe na trenutno izdanje zlib 1.2.11. Važno je napomenuti da je zakrpa za ispravljanje ranjivosti predložena još 2018., ali programeri nisu obratili pozornost na to i nisu izdali korektivno izdanje (biblioteka zlib zadnji put je ažurirana 2017.). Popravak također još nije uključen u pakete koje nude distribucije. Objavljivanje popravaka po distribucijama možete pratiti na ovim stranicama: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD. Knjižnica zlib-ng nije zahvaćena problemom.

Ranjivost se javlja ako ulazni tok sadrži veliki broj podudarnosti koje treba pakirati, a na koje se pakiranje primjenjuje na temelju fiksnih Huffmanovih kodova. Pod određenim okolnostima, sadržaj međuspremnika u koji je smješten komprimirani rezultat može se preklapati s memorijom u kojoj je pohranjena tablica učestalosti simbola. Kao rezultat toga, generiraju se netočni komprimirani podaci i ruše se zbog pisanja izvan granice međuspremnika.

Ranjivost se može iskoristiti samo pomoću strategije kompresije koja se temelji na fiksnim Huffmanovim kodovima. Slična se strategija odabire kada je opcija Z_FIXED izričito omogućena u kodu (primjer sekvence koja dovodi do rušenja pri korištenju opcije Z_FIXED). Sudeći prema kodu, strategija Z_FIXED također se može odabrati automatski ako optimalno i statično stablo izračunato za podatke imaju istu veličinu.

Još nije jasno mogu li se uvjeti za iskorištavanje ranjivosti odabrati korištenjem zadane strategije kompresije Z_DEFAULT_STRATEGY. Ako nije, tada će ranjivost biti ograničena na određene specifične sustave koji eksplicitno koriste opciju Z_FIXED. Ako je tako, tada bi šteta od ranjivosti mogla biti vrlo značajna, budući da je biblioteka zlib de facto standard i koristi se u mnogim popularnim projektima, uključujući Linux kernel, OpenSSH, OpenSSL, apache httpd, libpng, FFmpeg, rsync, dpkg , rpm, Git , PostgreSQL, MySQL itd.

Izvor: opennet.ru

Dodajte komentar