Red Hat Bugzilla – Full Text Bug Listing
|Summary:||CVE-2014-8140 unzip: out-of-bounds write issue in test_compr_eb() (oCERT-2014-011)|
|Product:||[Other] Security Response||Reporter:||Tomas Hoger <thoger>|
|Component:||vulnerability||Assignee:||Red Hat Product Security <security-response-team>|
|Status:||CLOSED ERRATA||QA Contact:||Frantisek Sumsal <fsumsal>|
|Version:||unspecified||CC:||carnil, fsumsal, jaeshin, pstodulk, raysatiro, security-response-team|
|Fixed In Version:||Doc Type:||Bug Fix|
An integer underflow flaw, leading to a buffer overflow, was found in the way unzip uncompressed certain extra fields of a file. A specially crafted Zip archive could cause unzip to crash when the archive was tested with unzip's '-t' option.
|Last Closed:||2015-03-18 17:11:16 EDT||Type:||---|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Bug Depends On:||1191118, 1196124, 1196125, 1196126, 1196127|
Description Tomas Hoger 2014-12-16 10:35:58 EST
oCERT reports an unzip flaw discovered by Michele Spagnuolo, Google Security Team: """ The write error shows a problem in extract.c:test_compr_eb(), which was not expecting an uncompressed size of zero for an EF_NTSD extra block. Proposed changes: http://antinode.info/ftp/info-zip/unzip60/extract.c extract.c:test_compr_eb() gets a new validity test. """ Acknowledgement: Red Hat would like to thank oCERT for reporting these issues. oCERT acknowledges Michele Spagnuolo of the Google Security Team as the original reporter.
Comment 2 Tomas Hoger 2014-12-16 10:42:25 EST
Created attachment 969621 [details] Upstream patch This seems to be the upstream fix mentioned in the comment 0.
Comment 4 Huzaifa S. Sidhpurwala 2014-12-22 10:49:05 EST
External Reference: http://www.ocert.org/advisories/ocert-2014-011.html
Comment 5 Tomas Hoger 2015-02-10 07:36:54 EST
Upstream patch in comment 2 does not address all related problems completely. See CVE-2014-9636 / bug 1184985 to address issues identified by the oCERT-2014-011 test case. The problem the patch in comment 2 addresses is an uncompressed data size of 0 specified in certain extra field blocks (such as EF_NTSD mentioned in the report, but other types were affected as well). If a zip file indicated that uncompressed data size was 0, unzip skipped the check to ensure that there were still enough data in the current extra field block to hold compression data header. When using STORE compression (i.e. data stored uncompressed), this led to integer underflow, resulting in memcpy() getting called with excessively large size argument, causing it to over-read and over-write input and output buffers and crash. This is unlikely to allow code execution. Affected code is only reached when running unzip in the test mode (unzip -t), but not when extracting zip archives.
Comment 6 Tomas Hoger 2015-02-10 08:37:08 EST
Created unzip tracking bugs for this issue: Affects: fedora-all [bug 1191118]
Comment 8 Fedora Update System 2015-02-15 22:25:45 EST
unzip-6.0-20.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.
Comment 9 Fedora Update System 2015-02-23 18:25:19 EST
unzip-6.0-17.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.
Comment 10 Martin Prpič 2015-02-25 05:25:26 EST
Statement: Red Hat Enterprise Linux 5 is now in Production 3 Phase of the support and maintenance life cycle. This has been rated as having Low security impact and is not currently planned to be addressed in future updates in Red Hat Enterprise Linux 5. For additional information, refer to the Red Hat Enterprise Linux Life Cycle: https://access.redhat.com/support/policy/updates/errata/