Bug 1443626 (CVE-2017-7892)

Summary: CVE-2017-7892 capnproto: Integer overflow due to a malicious message
Product: [Other] Security Response Reporter: Andrej Nemec <anemec>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: ngompa13
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-10-19 03:25:27 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: 1443628, 1443629    
Bug Blocks:    

Description Andrej Nemec 2017-04-19 15:02:03 UTC
A vulnerability was found in capnproto. A malicious message could contain a far pointer pointing outside of the message. Cap'n Proto messages are broken into segments of continuous memory. A far pointer points from one segment into another, indicating both the segment number and an offset within that segment. If a malicious far pointer contained an offset large enough to overflow the pointer arithmetic (wrapping around to the beginning of memory), then it would escape bounds checking, in part because the compiler would elide half of the bounds check as an optimization.

External References:

https://github.com/sandstorm-io/capnproto/blob/master/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md

Upstream patch:

https://github.com/sandstorm-io/capnproto/commit/52bc956459a5e83d7c31be95763ff6399e064ae4

Comment 1 Andrej Nemec 2017-04-19 15:02:58 UTC
Created capnproto tracking bugs for this issue:

Affects: epel-7 [bug 1443628]
Affects: fedora-all [bug 1443629]