CVE-2016-3074

NameCVE-2016-3074
DescriptionInteger signedness error in GD Graphics Library 2.1.1 (aka libgd or libgd2) allows remote attackers to cause a denial of service (crash) or potentially execute arbitrary code via crafted compressed gd2 data, which triggers a heap-based buffer overflow.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDSA-3556-1, DSA-3602-1
Debian Bugs822242

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
libgd2 (PTS)jessie, jessie (lts)2.1.0-5+deb8u15fixed
stretch (security)2.2.4-2+deb9u4fixed
stretch (lts), stretch2.2.4-2+deb9u6fixed
buster (security), buster, buster (lts)2.2.5-5.2+deb10u1fixed
bullseye2.3.0-2fixed
bookworm2.3.3-9fixed
sid, trixie2.3.3-12fixed
php5 (PTS)jessie, jessie (lts)5.6.40+dfsg-0+deb8u21fixed
php7.0 (PTS)stretch (security)7.0.33-0+deb9u12fixed
stretch (lts), stretch7.0.33-0+deb9u19fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
hhvmsource(unstable)3.12.11+dfsg-1unimportant
libgd2sourcewheezy2.0.36~rc1~dfsg-6.1+deb7u2DSA-3556-1
libgd2sourcejessie2.1.0-5+deb8u1DSA-3556-1
libgd2source(unstable)2.1.1-4.1822242
php5sourcejessie5.6.22+dfsg-0+deb8u1DSA-3602-1
php5source(unstable)5.6.21+dfsg-1unimportant
php7.0source(unstable)7.0.6-1unimportant

Notes

HHVM implements additional sanity checks, not directly epxloitable
PoC: https://github.com/dyntopia/exploits/tree/master/CVE-2016-3074
Upstream fix: https://github.com/libgd/libgd/commit/2bb97f407c1145c850416a3bfbcc8cf124e68a19
Starting with 5.4.0-1 Debian uses the system copy of libgd
PHP bug: https://bugs.php.net/bug.php?id=71912
HHVM fix: https://github.com/facebook/hhvm/commit/29a6487d648d1593e1e2fa615d9b3a844756ddc3

Search for package or bug name: Reporting problems