Sårbarhed i zlib, der opstår ved komprimering af specialdesignede data

En sårbarhed (CVE-2018-25032) er blevet identificeret i zlib-biblioteket, hvilket fører til et bufferoverløb, når man forsøger at komprimere en specielt forberedt sekvens af tegn i indgående data. I sin nuværende form har forskere demonstreret evnen til at få en proces til at afslutte unormalt. Om problemet kan få mere alvorlige konsekvenser er endnu ikke undersøgt.

Sårbarheden vises fra version zlib 1.2.2.2 og påvirker også den aktuelle udgivelse af zlib 1.2.11. Det er bemærkelsesværdigt, at en patch til at rette op på sårbarheden blev foreslået tilbage i 2018, men udviklerne var ikke opmærksomme på det og frigav ikke en korrigerende udgivelse (zlib-biblioteket blev sidst opdateret i 2017). Rettelsen er heller ikke endnu inkluderet i de pakker, der tilbydes af distributioner. Du kan spore udgivelsen af ​​rettelser efter distributioner på disse sider: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD. zlib-ng-biblioteket er ikke påvirket af problemet.

Sårbarheden opstår, hvis inputstrømmen indeholder et stort antal matches, der skal pakkes, hvortil pakning anvendes baseret på faste Huffman-koder. Under visse omstændigheder kan indholdet af den mellemliggende buffer, hvori det komprimerede resultat placeres, overlappe hukommelsen, hvori symbolfrekvenstabellen er lagret. Som følge heraf genereres ukorrekte komprimerede data og går ned på grund af skrivning uden for buffergrænsen.

Sårbarheden kan kun udnyttes ved hjælp af en komprimeringsstrategi baseret på faste Huffman-koder. En lignende strategi vælges, når Z_FIXED-indstillingen er eksplicit aktiveret i koden (et eksempel på en sekvens, der fører til et nedbrud ved brug af Z_FIXED-indstillingen). At dømme efter koden kan Z_FIXED-strategien også vælges automatisk, hvis de optimale og statiske træer beregnet for dataene har samme størrelse.

Det er endnu ikke klart, om betingelserne for at udnytte sårbarheden kan vælges ved hjælp af standard Z_DEFAULT_STRATEGY komprimeringsstrategi. Hvis ikke, så vil sårbarheden være begrænset til visse specifikke systemer, der eksplicit bruger Z_FIXED-indstillingen. Hvis det er tilfældet, kan skaden fra sårbarheden være meget betydelig, da zlib-biblioteket er en de facto-standard og bruges i mange populære projekter, herunder Linux-kernen, OpenSSH, OpenSSL, apache httpd, libpng, FFmpeg, rsync, dpkg , rpm, Git , PostgreSQL, MySQL osv.

Kilde: opennet.ru

Tilføj en kommentar