Organizația ISRG (Internet Security Research Group), care este fondatoarea proiectului Let's Encrypt și promovează dezvoltarea tehnologiilor pentru creșterea securității Internetului, a prezentat proiectul zlib-rs pentru a crea un analog securizat al bibliotecii de compresie a datelor zlib. . Codul zlib-rs este scris în Rust și este distribuit sub licența Zlib. Dezvoltarea se realizează cu un ochi pe proiectul zlib-ng, care dezvoltă o versiune de înaltă performanță a zlib. Proiectul a dezvoltat două biblioteci: zlib-rs, o implementare a API-ului zlib care nu utilizează blocuri nesigure; libz-rs-sys este un add-on cu suport C API care conține cod în modul „nesigur”.
Se spune că motivul creării zlib-rs este acela de a oferi o variantă de zlib care evită potențialele defecțiuni cauzate de erori de memorie. Potrivit Microsoft și Google, aproximativ 70% dintre vulnerabilități sunt cauzate de manipularea nesigură a memoriei. Este de așteptat ca utilizarea limbajului Rust pentru a dezvolta zlib-rs va reduce riscul de vulnerabilități cauzate de lucrul nesigur cu memoria și va elimina apariția erorilor, cum ar fi accesarea unei zone de memorie după ce aceasta a fost eliberată și depășirea memoriei tampon.
Biblioteca Zlib este distribuită pe scară largă și utilizată ca dependență de multe sisteme, deși vulnerabilități periculoase apar periodic în codul Zlib. De exemplu, în 2022, în zlib s-a descoperit o depășire a tamponului atunci când s-a încercat comprimarea unei secvențe special pregătite de caractere, ceea ce a făcut posibilă exploatarea vulnerabilității prin transmiterea de date de intrare special formatate.
Sursa: opennet.ru
