Il pacchetto Zlib contiene routine di compressione e decompressione usate da alcuni programmi.
Zlib ha una vulnerabilità buffer overflow che può portare ad un attaccco Denial of Service. La seguente patch corregge il problema:
patch -Np1 -i ../zlib-1.2.2-security_fix-1.patch
Zlib è nota per costruire scorrettamente la propria libreria condivisa se CFLAGS è specificato nell'ambiente. Se si usa una specifica variabile CFLAGS assicurarsi di aggiungere la direttiva -fPIC alla variabile CFLAGS per la durata del comando configure precedente, quindi rimuoverla successivamente.
Preparare Zlib per la compilazione:
./configure --prefix=/usr --shared --libdir=/lib
Compilare il pacchetto:
make
Per testare i risultati digitare: make check.
Installare la libreria condivisa:
make install
Il comando precedente ha installato un file .so in /lib. Lo rimuoveremo e lo ricollegheremo a /usr/lib:
rm /lib/libz.so ln -sf ../../lib/libz.so.1.2.2 /usr/lib/libz.so
Costruire la libreria statica:
make clean ./configure --prefix=/usr make
Per testare di nuovo i risultati digitare: make check.
Installare la libreria statica:
make install
Correggere i permessi sulla libreria statica:
chmod 644 /usr/lib/libz.a