Bug 1509291 (CVE-2017-16227)

Summary: CVE-2017-16227 quagga: Incorrect AS_PATH size calculation for long paths
Product: [Other] Security Response Reporter: Adam Mariš <amaris>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: balajig81, bennie.joubert, jaskalnik, mruprich, msekleta
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: quagga 1.2.2 Doc Type: If docs needed, set a value
Doc Text:
A denial of service flaw was found in the way the bgpd daemon in Quagga handled the processing of large BGP update messages. A remote, previously trusted attacker could potentially use this flaw to cause bgpd to terminate existing BGP sessions, thereby leading to denial of service.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-11-14 08:20: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: 1509292    
Bug Blocks: 1509296    

Description Adam Mariš 2017-11-03 13:39:06 UTC
The aspath_put function in bgpd/bgp_aspath.c in Quagga before 1.2.2 allows remote attackers to cause a denial of service (session drop) via BGP UPDATE messages, because AS_PATH size calculation for long paths counts certain bytes twice and consequently constructs an invalid message.

Affected versions: 0.99.10 - 0.99.24.1, 1.0.*, 1.1.0, 1.1.1, 1.2.0, 1.2.1

Upstream patch:

https://git.savannah.gnu.org/cgit/quagga.git/commit/?id=7a42b78be9a4108d98833069a88e6fddb9285008

Reference:

https://lists.quagga.net/pipermail/quagga-dev/2017-September/033284.html

Comment 1 Adam Mariš 2017-11-03 13:39:37 UTC
Created quagga tracking bugs for this issue:

Affects: fedora-all [bug 1509292]