Title: GD Graphics Library Remote Integer Overflow Vulnerability
Severity: CRITICAL
Description:
The GD Graphics Library (gdlib) is an open-source graphics library available for multiple platforms including Unix variants and Microsoft Windows. It is implemented in ANSI C and is designed to facilitate creation and manipulation of PNG, JPEG, and GIF image formats.
The gdlib library is affected by an integer overflow that facilitates a heap overflow. The library fails to do proper sanity checking on size values contained within image format files.
The problem presents itself when the library is used to process malicious image-format files. Specifically, the problem occurs in the 'gdImageCreateFromPngCtx()' function call in the 'gd_png.c' file. Two values are taken from the image file -- the pixel row and column value -- and multiplied together to allocate the memory required to store the compressed image. Once allocated, the image array is passed to the libPNG library where the image is first inflated using the zLib function 'inflate()' and then copied into heap memory in the 'png_combine_row()' function of the libPNG library.
An attacker may leverage this issue by providing an image with invalid row and column values, facilitating manipulation of process heap memory, potentially leading to code execution and compromise of the computer running the affected library.
Although gdlib version 2.0.28 is the only version reportedly affected by this issue, earlier versions are likely affected as well.
Affected Products:
- Avaya Converged Communications Server 2.0.0
- Avaya Intuity LX
- Avaya MN100
- Avaya Modular Messaging (MSS) 1.1.0
- Avaya Modular Messaging (MSS) 2.0.0
- Avaya Modular Messaging S3400
- Avaya Network Routing 0.0.0
- Avaya S8300 R2.0.0
- Avaya S8300 R2.0.1
- Avaya S8500 R2.0.0
- Avaya S8500 R2.0.1
- Avaya S8700 R2.0.0
- Avaya S8700 R2.0.1
- Avaya S8710 R2.0.0
- Avaya S8710 R2.0.1
- Debian Linux 3.0.0
- Debian Linux 3.0.0 alpha
- Debian Linux 3.0.0 arm
- Debian Linux 3.0.0 hppa
- Debian Linux 3.0.0 ia-32
- Debian Linux 3.0.0 ia-64
- Debian Linux 3.0.0 m68k
- Debian Linux 3.0.0 mips
- Debian Linux 3.0.0 mipsel
- Debian Linux 3.0.0 ppc
- Debian Linux 3.0.0 s/390
- Debian Linux 3.0.0 sparc
- Easy Software Products CUPS 1.1.20
- GD Graphics Library gdlib 1.8.4
- GD Graphics Library gdlib 2.0.1
- GD Graphics Library gdlib 2.0.15
- GD Graphics Library gdlib 2.0.20
- GD Graphics Library gdlib 2.0.21
- GD Graphics Library gdlib 2.0.22
- GD Graphics Library gdlib 2.0.23
- GD Graphics Library gdlib 2.0.26
- GD Graphics Library gdlib 2.0.27
- GD Graphics Library gdlib 2.0.28
- Gentoo Linux
- Linux kernel 2.4.19
- Linux kernel 2.4.21
- Linux kernel 2.6.5
- MandrakeSoft Corporate Server 3.0.0
- MandrakeSoft Corporate Server 3.0.0 x86_64
- MandrakeSoft Linux Mandrake 10.2.0
- MandrakeSoft Linux Mandrake 10.2.0 x86_64
- MandrakeSoft Linux Mandrake 2006.0.0
- MandrakeSoft Linux Mandrake 2006.0.0 x86_64
- MandrakeSoft Multi Network Firewall 2.0.0
- OpenPKG OpenPKG 2.1.0
- OpenPKG OpenPKG 2.2.0
- OpenPKG OpenPKG Current
- RedHat Advanced Workstation for the Itanium Processor 2.1.0
- RedHat Advanced Workstation for the Itanium Processor 2.1.0 IA64
- RedHat Desktop 3.0.0
- RedHat Enterprise Linux AS 2.1
- RedHat Enterprise Linux AS 2.1 IA64
- RedHat Enterprise Linux AS 3
- RedHat Enterprise Linux ES 2.1
- RedHat Enterprise Linux ES 2.1 IA64
- RedHat Enterprise Linux ES 3
- RedHat Enterprise Linux WS 2.1
- RedHat Enterprise Linux WS 2.1 IA64
- RedHat Enterprise Linux WS 3
- RedHat Fedora Core2
- RedHat Fedora Core3
- S.u.S.E. Linux 8.0.0
- S.u.S.E. Linux 8.1.0
- S.u.S.E. Linux Desktop 1.0.0
- S.u.S.E. Linux Enterprise Server 8
- S.u.S.E. Linux Enterprise Server 9
- S.u.S.E. Linux Personal 10.0.0 OSS
- S.u.S.E. Linux Personal 8.2.0
- S.u.S.E. Linux Personal 9.0.0
- S.u.S.E. Linux Personal 9.0.0 x86_64
- S.u.S.E. Linux Personal 9.1.0
- S.u.S.E. Linux Personal 9.1.0 x86_64
- S.u.S.E. Linux Personal 9.2.0
- S.u.S.E. Linux Personal 9.2.0 x86_64
- S.u.S.E. Linux Personal 9.3.0
- S.u.S.E. Linux Personal 9.3.0 x86_64
- S.u.S.E. Linux Professional 10.0.0 OSS
- S.u.S.E. Linux Professional 8.2.0
- S.u.S.E. Linux Professional 9.0.0
- S.u.S.E. Linux Professional 9.0.0 x86_64
- S.u.S.E. Linux Professional 9.1.0
- S.u.S.E. Linux Professional 9.1.0 x86_64
- S.u.S.E. Linux Professional 9.2.0
- S.u.S.E. Linux Professional 9.2.0 x86_64
- S.u.S.E. Linux Professional 9.3.0
- S.u.S.E. Linux Professional 9.3.0 x86_64
- S.u.S.E. Novell Linux Desktop 9.0.0
- S.u.S.E. Open-Enterprise-Server 9.0.0
- S.u.S.E. SUSE LINUX Retail Solution 8.0.0
- S.u.S.E. SuSE Linux Openexchange Server 4.0.0
- S.u.S.E. SuSE Linux School Server for i386
- S.u.S.E. SuSE Linux Standard Server 8.0.0
- SGI Advanced Linux Environment 3.0.0
- SGI ProPack 3.0.0
- Trustix Secure Enterprise Linux 2.0.0
- Trustix Secure Linux 1.5.0
- Trustix Secure Linux 2.0.0
- Trustix Secure Linux 2.1.0
- Trustix Secure Linux 2.2.0
- Turbolinux Appliance Server 2.0
- Turbolinux FUJI
- Turbolinux Home
- Turbolinux Turbolinux 10 F...
- Turbolinux Turbolinux Desktop 10.0.0
- Turbolinux Turbolinux FUJI
- Turbolinux Turbolinux Server 10.0.0
- Turbolinux Turbolinux Server 10.0.0 x64
- Ubuntu Ubuntu Linux 4.1.0 ia32
- Ubuntu Ubuntu Linux 4.1.0 ia64
- Ubuntu Ubuntu Linux 4.1.0 ppc
- Xpdf Xpdf 3.0.0 0
- libpng libpng 1.0.15
- libpng libpng3 1.2.5
- rPath rPath Linux 1
References:
- Avaya: ASA-2005-017_RHSA-2004-638
- GD Graphics Library: gdlib Home Page
- RedHat: RHSA-2004:638-09 - Updated gd packages fix security issues
- RedHat: RHSA-2004:638-13 - Updated gd packages fix security issues
Juniper Networks provides this content via a wide variety of sources and production methods. If notified of errors or omissions in the content of this page, Juniper Networks, at its discretion, will modify or remove the page or leave the content as is, depending on various factors including but not limited to the reputation and authority of the party providing the notification. Please use the contact information displayed elsewhere on this page to report any errors or omissions regarding the content on this page.