Vulnerabilitat en zlib que es produeix en comprimir dades especialment dissenyades

S'ha identificat una vulnerabilitat (CVE-2018-25032) a la biblioteca zlib, que provoca un desbordament de memòria intermèdia quan s'intenta comprimir una seqüència de caràcters especialment preparada a les dades entrants. En la seva forma actual, els investigadors han demostrat la capacitat de fer que un procés finalitzi de manera anormal. Encara no s'ha estudiat si el problema podria tenir conseqüències més greus.

La vulnerabilitat apareix a partir de la versió zlib 1.2.2.2 i també afecta la versió actual de zlib 1.2.11. Cal destacar que l'any 2018 es va proposar un pedaç per corregir la vulnerabilitat, però els desenvolupadors no hi van prestar atenció i no van publicar cap versió correctiva (la biblioteca zlib es va actualitzar per última vegada el 2017). La correcció tampoc està inclosa encara als paquets que ofereixen les distribucions. Podeu fer un seguiment de la publicació de correccions per distribucions en aquestes pàgines: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD. La biblioteca zlib-ng no es veu afectada pel problema.

La vulnerabilitat es produeix si el flux d'entrada conté un gran nombre de coincidències per empaquetar, a les quals s'aplica l'empaquetament en funció de codis Huffman fixos. En determinades circumstàncies, el contingut de la memòria intermèdia en què es col·loca el resultat comprimit pot sobreposar-se a la memòria on s'emmagatzema la taula de freqüències de símbols. Com a resultat, es generen dades comprimides incorrectes i es bloquegen a causa de l'escriptura fora del límit de la memòria intermèdia.

La vulnerabilitat només es pot explotar mitjançant una estratègia de compressió basada en codis Huffman fixos. S'escull una estratègia similar quan l'opció Z_FIXED està activada explícitament al codi (un exemple d'una seqüència que provoca un error quan s'utilitza l'opció Z_FIXED). A jutjar pel codi, l'estratègia Z_FIXED també es pot seleccionar automàticament si els arbres òptims i estàtics calculats per a les dades tenen la mateixa mida.

Encara no està clar si les condicions per explotar la vulnerabilitat es poden seleccionar mitjançant l'estratègia de compressió Z_DEFAULT_STRATEGY predeterminada. Si no, la vulnerabilitat es limitarà a determinats sistemes específics que utilitzen explícitament l'opció Z_FIXED. Si és així, el dany de la vulnerabilitat podria ser molt significatiu, ja que la biblioteca zlib és un estàndard de facto i s'utilitza en molts projectes populars, com ara el nucli Linux, OpenSSH, OpenSSL, apache httpd, libpng, FFmpeg, rsync, dpkg. , rpm, Git , PostgreSQL, MySQL, etc.

Font: opennet.ru

Afegeix comentari