In de zlib-bibliotheek is een kwetsbaarheid aangetroffen (CVE-2018-25032) die leidt tot een buffer-overloop bij het proberen te comprimeren van een speciaal voorbereide reeks karakters in de inkomende gegevens. Onder de huidige omstandigheden hebben onderzoekers aangetoond dat het mogelijk is om een noodstop van het proces te veroorzaken. Of het probleem ernstigere gevolgen kan hebben, is nog niet bestudeerd.
De kwetsbaarheid doet zich voor vanaf versie zlib 1.2.2.2 en betreft ook de huidige release zlib 1.2.11. Het is opmerkelijk dat een patch voor het oplossen van de kwetsbaarheid al in 2018 werd aangeboden, maar ontwikkelaars hebben dit genegeerd en geen correctieve release uitgebracht (de zlib-bibliotheek is voor het laatst bijgewerkt in 2017). De oplossing is ook nog niet opgenomen in de pakketten die door de distributies worden aangeboden. Het is mogelijk om de publicatie van oplossingen door de distributies te volgen op de volgende pagina's: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD. De zlib-ng-bibliotheek is niet kwetsbaar voor dit probleem.
De kwetsbaarheid doet zich voor wanneer er in de inkomende stroom een groot aantal overlapende matches is waarvan de compressie is gebaseerd op vaste Huffman-codes. Onder bepaalde omstandigheden kan de inhoud van de tussenbuffer, waar het gecomprimeerde resultaat in wordt geplaatst, overlappen met het geheugen waarin de frequentietabel van de karakters is opgeslagen. Dit resulteert in de vorming van onjuiste gecomprimeerde gegevens en een crash door een buffer-overloop.
De kwetsbaarheid kan alleen worden geƫxploiteerd bij het gebruik van een compressiestrategie gebaseerd op vaste Huffman-codes. Een dergelijke strategie wordt geselecteerd wanneer de optie Z_FIXED expliciet in de code is ingeschakeld (voorbeeld van een reeks die een crash veroorzaakt bij gebruik van de optie Z_FIXED). Uit de code blijkt ook dat de Z_FIXED-strategie automatisch kan worden geselecteerd als de optimale en statische bomen voor de gegevens dezelfde grootte hebben.
Het is nog niet duidelijk of de voorwaarden voor het exploiteren van de kwetsbaarheid kunnen worden opgesteld bij het gebruik van de Z_DEFAULT_STRATEGY-compressiestrategie, die standaard wordt toegepast. Als dat niet het geval is, zal de kwetsbaarheid zich beperken tot specifieke systemen waarin de Z_FIXED-optie expliciet wordt toegepast. Indien dat wel het geval is, kan de schade van de kwetsbaarheid aanzienlijk zijn, aangezien de zlib-bibliotheek de de facto standaard is en in veel populaire projecten wordt gebruikt, waaronder de Linux-kernel, OpenSSH, OpenSSL, apache httpd, libpng, FFmpeg, rsync, dpkg, rpm, Git, PostgreSQL, MySQL, enz.
Bron: opennet.ru
