O vulnerabilitate în zlib, care apare la comprimarea datelor special formatate

O bibliotecă zlib a identificat o vulnerabilitate (CVE-2018-25032) care poate provoca o suprasarcină a buffer-ului atunci când se încearcă comprimarea unei secvențe de caractere special pregătite în datele de intrare. În starea actuală, cercetătorii au demonstrat posibilitatea de a provoca o eroare fatidică a procesului. Impactul mai grav al problemei nu a fost încă studiat.

Vulnerabilitatea se manifestă începând cu versiunea zlib 1.2.2.2 și afectează inclusiv versiunea actuală zlib 1.2.11. Este notabil că un patch pentru remedierea vulnerabilității a fost propus încă din 2018, dar dezvoltatorii nu i-au acordat atenție și nu au lansat o versiune corectivă (biblioteca zlib a fost actualizată ultima dată în 2017). Remedierea nu a fost deocamdată inclusă nici în pachetele oferite de distribuții. Monitorizarea publicării remediilor de către distribuții se poate face pe aceste pagini: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD. Biblioteca zlib-ng nu este afectată de această problemă.

Vulnerabilitatea se manifestă atunci când în fluxul de intrare sunt întâlnite un număr mare de coincidences ce trebuie ambalate, la care se aplică ambalarea bazată pe coduri Huffman fixe. În anumite circumstanțe, conținutul buffer-ului intermediar, în care se plasează rezultatul comprimat, poate suprapune memoria în care este stocată tabela de frecvență a caracterelor. Ca urmare, se observă formarea unor date comprimate incorecte și o eroare datorată scrierii dincolo de limita buffer-ului.

Vulnerabilitatea poate fi exploatată doar folosind o strategie de comprimare bazată pe coduri Huffman fixe. O astfel de strategie este aleasă prin activarea explicită în cod a opțiunii Z_FIXED (exemplu de secvență care duce la eroare atunci când se folosește opțiunea Z_FIXED). Conform codului, strategia Z_FIXED poate fi de asemenea aleasă automat, dacă arborii optimali și statici calculați pentru date au aceeași dimensiune.

Încă nu este clar dacă pot fi stabilite condiții pentru exploatarea vulnerabilității utilizând strategia de comprimare Z_DEFAULT_STRATEGY, aplicată în mod implicit. Dacă nu, vulnerabilitatea va fi limitată la anumite sisteme specifice în care opțiunea Z_FIXED este aplicată explicit. Dacă da, daunele cauzate de vulnerabilitate pot fi foarte semnificative, deoarece biblioteca zlib este standardul de facto și este utilizată în multe proiecte populare, inclusiv nucleul Linux, OpenSSH, OpenSSL, apache httpd, libpng, FFmpeg, rsync, dpkg, rpm, Git, PostgreSQL, MySQL etc.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster