Bug 1602838 (CVE-2018-13988)

Summary: CVE-2018-13988 poppler: out of bounds read in pdfunite
Product: [Other] Security Response Reporter: Laura Pardo <lpardo>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: alexl, feborges, john.j5live, manisandro, mclasen, mkasik, rdieter, rhughes, rstrode, sandmann, security-response-team
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: poppler 0.67.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-06-10 10:33:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1607461, 1607462, 1607463, 1609036    
Bug Blocks: 1602839    

Description Laura Pardo 2018-07-18 15:27:08 UTC
An out-of-bounds read flaw was found in the Poppler library as demonstrated by pdfunite. This may result in a denial of service or other undefined behavior. This flaw may be exploitable when a victim opens a specially crafted PDF file.

Upstream Patch: https://cgit.freedesktop.org/poppler/poppler/commit/?id=004e3c10df0abda214f0c293f9e269fdd979c5ee

Comment 1 Laura Pardo 2018-07-23 15:12:49 UTC
Acknowledgments:

Name: Hosein Askari

Comment 2 Laura Pardo 2018-07-23 15:14:14 UTC
Created mingw-poppler tracking bugs for this issue:

Affects: fedora-all [bug 1607462]


Created poppler tracking bugs for this issue:

Affects: fedora-all [bug 1607461]

Comment 4 Scott Gayou 2018-07-26 17:59:57 UTC
Downgrading this to low. No obvious, quickly discovered evidence that this leads to a buffer overflow. Looks like an out of bounds read triggering a segfault. 

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7abc1c1 in XRef::getEntry (this=this@entry=0x6372c0, i=-45027, complainIfMissing=complainIfMissing@entry=true)
    at XRef.cc:1609
1609	  if (i >= size || entries[i].type == xrefEntryNone) {

Offsets negatively into entries and triggers the segfault.

Comment 5 Scott Gayou 2018-07-26 18:16:30 UTC
This was de-embargoed after the reporter reported this upstream, agreed on a release, and the patch came out.

Comment 7 Scott Gayou 2018-07-26 18:23:03 UTC
Statement:

Red Hat Product Security has rated this issue as having a security impact of Low, and a future update may address this flaw.

Comment 9 Scott Gayou 2018-07-26 19:09:20 UTC
RHEL 5 and 6 have similar code and look vulnerable due to the missing check. Untested as pdfunite was not shipped with those versions of poppler and due to low severity. Assumption is affected.

Comment 11 errata-xmlrpc 2018-10-30 07:42:51 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2018:3140 https://access.redhat.com/errata/RHSA-2018:3140