CVE-2016-4300

NameCVE-2016-4300
DescriptionInteger overflow in the read_SubStreamsInfo function in archive_read_support_format_7zip.c in libarchive before 3.2.1 allows remote attackers to execute arbitrary code via a 7zip file with a large number of substreams, 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)
ReferencesDLA-554-1, DSA-3657-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
libarchive (PTS)jessie, jessie (lts)3.1.2-11+deb8u11fixed
stretch (security)3.2.2-2+deb9u3fixed
stretch (lts), stretch3.2.2-2+deb9u4fixed
buster (security), buster, buster (lts)3.3.3-4+deb10u3fixed
bullseye3.4.3-2+deb11u1fixed
bookworm (security), bookworm3.6.2-1+deb12u1fixed
trixie3.7.4-1fixed
sid3.7.4-1.1fixed

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

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
libarchivesourcewheezy3.0.4-3+wheezy2DLA-554-1
libarchivesourcejessie3.1.2-11+deb8u2DSA-3657-1
libarchivesource(unstable)3.2.1-1

Notes

http://blog.talosintel.com/2016/06/the-poisoned-archives.html
http://www.talosintel.com/reports/TALOS-2016-0152/
https://github.com/libarchive/libarchive/issues/718
Requirement: https://github.com/libarchive/libarchive/commit/3d469df8eaace8297a27ce62befa295c0fdc5a3a
Fixed by: https://github.com/libarchive/libarchive/commit/e79ef306afe332faf22e9b442a2c6b59cb175573 (v3.2.1)
Notice introduction of UMAX_ENTRY with 3d469df8eaace8297a27ce62befa295c0fdc5a3a
Libarchive 3.1.2 and lower has a much smaller "UMAX_ENTRY", which is hardcoded
in various places before 3d469df8eaace8297a27ce62befa295c0fdc5a3a and has value
1000000, making exploitation more difficult but not impossible.

Search for package or bug name: Reporting problems