DSA-140-2 libpng -- buffer overflow

Related Vulnerabilities: CVE-2002-0660   CVE-2002-0728  

Developers of the PNG library have fixed a buffer overflow in the progressive reader when the PNG datastream contains more IDAT data than indicated by the IHDR chunk. Such deliberately malformed datastreams would crash applications which could potentially allow an attacker to execute malicious code. Programs such as Galeon, Konqueror and various others make use of these libraries. In addition to that, the packages below fix another potential buffer overflow. The PNG libraries implement a safety margin which is also included in a newer upstream release. Thanks to Glenn Randers-Pehrson for informing us. To find out which packages depend on this library, you may want to execute the following commands: apt-cache showpkg libpng2 apt-cache showpkg libpng3 This problem has been fixed in version 1.0.12-3.woody.2 of libpng and version 1.2.1-1.1.woody.2 of libpng3 for the current stable distribution (woody) and in version 1.0.12-4 of libpng and version 1.2.1-2 of libpng3 for the unstable distribution (sid). The potato release of Debian does not seem to be vulnerable. We recommend that you upgrade your libpng packages immediately and restart programs and daemons that link to these libraries and read external data, such as web browsers.

Debian Security Advisory

DSA-140-2 libpng -- buffer overflow

Date Reported:
05 Aug 2002
Affected Packages:
libpng, libpng3
Vulnerable:
Yes
Security database references:
In Mitre's CVE dictionary: CVE-2002-0660, CVE-2002-0728.
More information:

Developers of the PNG library have fixed a buffer overflow in the progressive reader when the PNG datastream contains more IDAT data than indicated by the IHDR chunk. Such deliberately malformed datastreams would crash applications which could potentially allow an attacker to execute malicious code. Programs such as Galeon, Konqueror and various others make use of these libraries.

In addition to that, the packages below fix another potential buffer overflow. The PNG libraries implement a safety margin which is also included in a newer upstream release. Thanks to Glenn Randers-Pehrson for informing us.

To find out which packages depend on this library, you may want to execute the following commands:

    apt-cache showpkg libpng2
    apt-cache showpkg libpng3

This problem has been fixed in version 1.0.12-3.woody.2 of libpng and version 1.2.1-1.1.woody.2 of libpng3 for the current stable distribution (woody) and in version 1.0.12-4 of libpng and version 1.2.1-2 of libpng3 for the unstable distribution (sid). The potato release of Debian does not seem to be vulnerable.

We recommend that you upgrade your libpng packages immediately and restart programs and daemons that link to these libraries and read external data, such as web browsers.

Fixed in:

Debian GNU/Linux 3.0 (woody)

Source:
http://security.debian.org/pool/updates/main/libp/libpng/libpng_1.0.12-3.woody.2.dsc
http://security.debian.org/pool/updates/main/libp/libpng/libpng_1.0.12-3.woody.2.diff.gz
http://security.debian.org/pool/updates/main/libp/libpng/libpng_1.0.12.orig.tar.gz
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2.dsc
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2.diff.gz
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1.orig.tar.gz
Alpha:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_alpha.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_alpha.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_alpha.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_alpha.deb
ARM:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_arm.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_arm.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_arm.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_arm.deb
Intel IA-32:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_i386.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_i386.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_i386.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_i386.deb
Intel IA-64:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_ia64.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_ia64.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_ia64.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_ia64.deb
HP Precision:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_hppa.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_hppa.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_hppa.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_hppa.deb
Motorola 680x0:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_m68k.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_m68k.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_m68k.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_m68k.deb
Big endian MIPS:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_mips.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_mips.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_mips.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_mips.deb
Little endian MIPS:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_mipsel.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_mipsel.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_mipsel.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_mipsel.deb
PowerPC:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_powerpc.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_powerpc.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_powerpc.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_powerpc.deb
IBM S/390:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_s390.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_s390.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_s390.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_s390.deb
Sun Sparc:
http://security.debian.org/pool/updates/main/libp/libpng3/libpng-dev_1.2.1-1.1.woody.2_sparc.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2_1.0.12-3.woody.2_sparc.deb
http://security.debian.org/pool/updates/main/libp/libpng/libpng2-dev_1.0.12-3.woody.2_sparc.deb
http://security.debian.org/pool/updates/main/libp/libpng3/libpng3_1.2.1-1.1.woody.2_sparc.deb

MD5 checksums of the listed files are available in the original advisory.