copyright | disclaimer | privacy | contact  
Australia's Leading Computer Emergency Response Team
 
Search this site

 
On this site

 > HOME
 > About AusCERT
 > Membership
 > Contact Us
 > PKI Services
 > Training
 > Publications
 > Sec. Bulletins
 > Conferences
 > News & Media
 > Services
 > Web Log
 > Site Map
 > Site Help
 > Member login





 

ESB-2004.0482 -- US-CERT Technical Cyber Security Alert TA04-217A -- Multiple Vulnerabilities in libpng

Date: 05 August 2004
References: ESB-2004.0489  ESB-2004.0490  ESB-2004.0496  ESB-2004.0497  ESB-2004.0500  

Click here for printable version
Click here for PGP verifiable version
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

===========================================================================
             AUSCERT External Security Bulletin Redistribution

     ESB-2004.0482 -- US-CERT Technical Cyber Security Alert TA04-217A
                    Multiple Vulnerabilities in libpng
                              05 August 2004

===========================================================================

        AusCERT Security Bulletin Summary
        ---------------------------------

Product:                the libpng library
Publisher:              US-CERT
Impact:                 Execute Arbitrary Code/Commands
                        Denial of Service
Access Required:        Remote
CVE Names:              CAN-2004-0597 CAN-2004-0598 CAN-2004-0599

- --------------------------BEGIN INCLUDED TEXT--------------------

- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Multiple Vulnerabilities in libpng

   Original release date: August 4, 2004
   Last revised: --
   Source: US-CERT

Systems Affected

   Applications and systems that use the libpng library.

Overview

   Several vulnerabilities exist in the libpng library, the most serious
   of which could allow a remote attacker to execute arbitrary code on an
   affected system.

I. Description

   The Portable Network Graphics (PNG) image format is used as an
   alternative to other image formats such as the Graphics Interchange
   Format (GIF). The libpng is a popular reference library available for
   application developers to support the PNG image format.

   Several vulnerabilities have been reported in the libpng library. Any
   application or system that uses this library may be affected. More
   detailed information is available in the individual vulnerability
   notes:

   VU#388984 - libpng fails to properly check length of transparency
   chunk (tRNS) data

   A buffer overflow vulnerability has been discovered in the way that
   libpng processes PNG images. This vulnerability could allow a remote
   attacker to execute arbitrary code on a vulnerable system by
   introducing a specially crafted PNG image.
   (Other references: CAN-2004-0597)

   VU#236656 - libpng png_handle_iCCP() NULL pointer dereference

   Under some circumstances, a null pointer may be dereferenced during a
   memory allocation in the png_handle_iCCP() function. As a result, a
   PNG image with particular characteristics could cause the affected
   application to crash. Similar errors are reported to exist in other
   locations within libpng.
   (Other references: CAN-2004-0598)

   VU#160448 - libpng integer overflow in image height processing

   An integer overflow error exists in the handling of PNG image height
   within the png_read_png() function. As a result, a PNG image with
   excessive height may cause an integer overflow during a memory
   allocation operation, which could cause the affected application to
   crash.
   (Other references: CAN-2004-0599)

   VU#477512 - libpng png_handle_sPLT() integer overflow

   A potential integer overflow error exists during a memory allocation
   operation within the png_handle_sPLT() function. It is unclear what
   practical impact this error might have on applications using libpng.
   (Other references: CAN-2004-0599)

   VU#817368 - libpng png_handle_sBIT() performs insufficient bounds
   checking

   A potentially insufficient bounds check exists within the
   png_handle_sBIT() function. A similar error exists in the
   png_handle_hIST() function. While the code that contains these errors
   could potentially permit a buffer overflow to occur during a
   subsequent png_crc_read() operation, it is unclear what practical
   vulnerabilities it might present in applications using libpng.
   (Other references: CAN-2004-0597)

   VU#286464 - libpng contains integer overflows in progressive display
   image reading

   The libpng library provides the ability to display interlaced, or
   progressive display, PNG images. A number of potential integer
   overflow errors exist in libpng's handling of such progressive display
   images. While the code that contains these errors introduces dangerous
   conditions, it is unclear what practical vulnerabilities it might
   present in applications using libpng.
   (Other references: CAN-2004-0599)

II. Impact

   In the case of VU#388984, an attacker with the ability to introduce a
   malformed PNG image to a vulnerable application could cause the
   application to crash or could potentially execute arbitrary code with
   the privileges of the user running the affected application.

   In the case of VU#236656 and VU#160448, an attacker with the ability
   to introduce a malformed PNG image to a vulnerable application could
   cause the application to crash.

   The impacts of the other vulnerabilities described above are unclear.

   A remote attacker could cause an application to crash or potentially
   execute arbitrary code by convincing a victim user to visit a
   malicious web site or view an email message containing a malformed
   image.

III. Solution

Apply a patch or upgrade

   Apply the appropriate patch or upgrade as specified by your vendor.
   For vendor-specific responses, please see your vendor's web site or
   the individual vulnerability notes.

   For individuals who rely on the original source of libpng, these
   issues have been resolved in libpng version 1.2.6rc1 (release
   candidate 1).

Appendix A. References

     * Chris Evans Security Advisory 2004.1 -
       <http://scary.beasts.org/security/CESA-2004-001.txt>
     * libpng Homepage - <http://libpng.sourceforge.net>
     * Portable Network Graphics (PNG) Homepage -
       <http://www.libpng.org/pub/png>
     * US-CERT Vulnerability Note VU#388984 -
       <http://www.kb.cert.org/vuls/id/388984>
     * US-CERT Vulnerability Note VU#817368 -
       <http://www.kb.cert.org/vuls/id/817368>
     * US-CERT Vulnerability Note VU#286464 -
       <http://www.kb.cert.org/vuls/id/286484>
     * US-CERT Vulnerability Note VU#477512 -
       <http://www.kb.cert.org/vuls/id/477512>
     * US-CERT Vulnerability Note VU#160448 -
       <http://www.kb.cert.org/vuls/id/160448>
     * US-CERT Vulnerability Note VU#236656 -
       <http://www.kb.cert.org/vuls/id/236656>
     * CVE CAN-2004-0597 -
       <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0597>
     * CVE CAN-2004-0598 -
       <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0598>
     * CVE CAN-2004-0599 -
       <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0599>
     _________________________________________________________________

   US-CERT thanks Chris Evans for researching and reporting these
   vulnerabilities.
     _________________________________________________________________

   Feedback can be directed to the US-CERT Technical Staff.
     _________________________________________________________________

   The latest copy of this document can be found at:

   <http://www.us-cert.gov/cas/techalerts/TA04-217A.html>

   Copyright 2004 Carnegie Mellon University. Terms of use

   Revision History

   Aug 4, 2004: Initial release

- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFBER8VXlvNRxAkFWARAtSFAKCGG0ALkKpzC3fhY3jlGZQDyzN5TgCg9g9c
lQD3Z5OoJ30TQenb8/lwjn0=
=d+t3
- -----END PGP SIGNATURE-----

- --------------------------END INCLUDED TEXT--------------------

You have received this e-mail bulletin as a result of your organisation's
registration with AusCERT. The mailing list you are subscribed to is
maintained within your organisation, so if you do not wish to continue
receiving these bulletins you should contact your local IT manager. If
you do not know who that is, please send an email to auscert@auscert.org.au
and we will forward your request to the appropriate person.

NOTE: Third Party Rights
This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content. The decision to follow or act on information or advice
contained in this security bulletin is the responsibility of each user or
organisation, and should be considered in accordance with your organisation's
site policies and procedures. AusCERT takes no responsibility for consequences
which may arise from following or acting on information or advice contained in
this security bulletin.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the author's website to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:

        http://www.auscert.org.au/render.html?cid=1980

If you believe that your computer system has been compromised or attacked in 
any way, we encourage you to let us know by completing the secure National IT 
Incident Reporting Form at:

        http://www.auscert.org.au/render.html?it=3192

Internet Email: auscert@auscert.org.au
Facsimile:      (07) 3365 7031
Telephone:      (07) 3365 4417 (International: +61 7 3365 4417)
                AusCERT personnel answer during Queensland business 
                hours which are GMT+10:00 (AEST).  On call after hours 
                for member emergencies only.
-----BEGIN PGP SIGNATURE-----
Comment: http://www.auscert.org.au/render.html?it=1967

iQCVAwUBQRFwVih9+71yA2DNAQIE6wP/d/V/NyvR5420Qpl93b9CeKhZknKEmU6z
zui9GD3UfYLJApHIXvxwKfHX57K33fsPDbpZ7Dq2NggxMpwLyqIqHQZPNlBa/ZTm
DdUdXogLTF6EG/IM91PoLMyWWRx2rD5T+1BF9vudZe5Jea0YhN/UoUyXyHb8E5Tn
v1mVELndzN8=
=HOMj
-----END PGP SIGNATURE-----