Bug 1833220 (CVE-2020-10749)

Summary: CVE-2020-10749 containernetworking/plugins: IPv6 router advertisements allow for MitM attacks on IPv4 clusters
Product: [Other] Security Response Reporter: Sam Fowler <sfowler>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: aos-bugs, bbennett, bmontgom, cdc, cnv-qe-bugs, danw, dcbw, dominik.mierzejewski, dosmith, eparis, fdeutsch, go-sig, jbrooks, jburrell, jnovy, joelsmith, jokerman, lsm5, mcambria, mtleilia, nstielau, phoracek, rh.container.bot, security-response-team, sfowler, sgott, sponnaga, zebob.m
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: containernetworking/plugins 0.8.6 Doc Type: If docs needed, set a value
Doc Text:
A vulnerability was found in affected container networking implementations that allow malicious containers in Kubernetes clusters to perform man-in-the-middle (MitM) attacks. A malicious container can exploit this flaw by sending “rogue” IPv6 router advertisements to the host or other containers, to redirect traffic to the malicious container.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-06-17 23:20:58 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: 1842336, 1837209, 1837779, 1837780, 1837781, 1837782, 1840464, 1840465, 1841607, 1842334, 1842335, 1842337, 1842391, 1842392, 1842393, 1842693, 1842694, 1842927, 1842928, 1842944    
Bug Blocks: 1833165    

Description Sam Fowler 2020-05-08 05:39:41 UTC
CNI network plugins create network bridges that IPv6 router advertisements by default. An attacker able to execute code in a container could exploit this to spoof rouge IPv6 router advertisements in IPv4 clusters to perform a MitM attack against the host network or another container on the same host.

Comment 6 Sam Fowler 2020-05-20 00:44:24 UTC
*** Bug 1833219 has been marked as a duplicate of this bug. ***

Comment 7 Sam Fowler 2020-05-20 00:45:43 UTC
*** Bug 1833215 has been marked as a duplicate of this bug. ***

Comment 8 Sam Fowler 2020-05-20 00:48:45 UTC
Upstream Fix:

https://github.com/containernetworking/plugins/pull/484

Comment 14 Sam Fowler 2020-05-28 06:17:49 UTC
Acknowledgments:

Name: the Kubernetes Product Security Committee
Upstream: Etienne Champetier

Comment 26 Sam Fowler 2020-06-01 10:51:54 UTC
Mitigation:

Prevent untrusted, non-privileged containers from running with CAP_NET_RAW.

Comment 29 Sam Fowler 2020-06-01 21:10:49 UTC
Created containernetworking-plugins tracking bugs for this issue:

Affects: fedora-all [bug 1842693]


Created golang-github-containernetworking-plugins tracking bugs for this issue:

Affects: fedora-all [bug 1842694]

Comment 32 errata-xmlrpc 2020-06-17 19:45:15 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.3

Via RHSA-2020:2443 https://access.redhat.com/errata/RHSA-2020:2443

Comment 33 errata-xmlrpc 2020-06-17 20:50:50 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.4

Via RHSA-2020:2403 https://access.redhat.com/errata/RHSA-2020:2403

Comment 34 Product Security DevOps Team 2020-06-17 23:20:58 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2020-10749

Comment 35 errata-xmlrpc 2020-06-23 14:27:07 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7 Extras

Via RHSA-2020:2684 https://access.redhat.com/errata/RHSA-2020:2684

Comment 36 errata-xmlrpc 2020-07-01 16:05:22 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.2

Via RHSA-2020:2592 https://access.redhat.com/errata/RHSA-2020:2592

Comment 37 errata-xmlrpc 2020-07-13 17:23:18 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.5

Via RHSA-2020:2412 https://access.redhat.com/errata/RHSA-2020:2412

Comment 38 errata-xmlrpc 2020-07-28 19:07:31 UTC
This issue has been addressed in the following products:

  RHEL-8-CNV-2.4
  RHEL-7-CNV-2.4

Via RHSA-2020:3194 https://access.redhat.com/errata/RHSA-2020:3194

Comment 39 errata-xmlrpc 2020-11-04 03:05:02 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2020:4694 https://access.redhat.com/errata/RHSA-2020:4694

Comment 40 Sam Fowler 2020-12-21 23:50:16 UTC
It can be verified on an OCP 3.11 cluster that IPv6 traffic is not forwarded with a command like below:

$ ovs-ofctl -O OpenFlow13 dump-flows br0 | grep ipv6
$

OpenShift SDN uses an OVS bridge which does not forward any packets that are not explicitly configured. There are no "ipv6" rules, therefore no "ipv6" traffic is forwarded.

http://www.openvswitch.org/support/dist-docs/ovs-fields.7.txt

Comment 41 Sam Fowler 2020-12-21 23:55:20 UTC
Statement:

In OpenShift Container Platform 4, the default network plugin, OpenShift SDN, and OVN Kubernetes, do not forward IPv6 traffic, making this vulnerability not exploitable. The affected code from containernetworking/plugins is however still included in these plugins, hence this vulnerability is rated Low for both OpenShift SDN and OVN-Kubernetes.

IPv6 traffic is not forwarded by the OpenShift SDN in OpenShift Container Platform 3.11, making this vulnerability not exploitable. However, the affected code from containernetworking/plugins is still included in the atomic-openshift package, hence this vulnerability is rated Low for OpenShift Container Platform 3.11.

Comment 42 errata-xmlrpc 2021-02-24 15:09:59 UTC
This issue has been addressed in the following products:

  Red Hat OpenShift Container Platform 4.7

Via RHSA-2020:5633 https://access.redhat.com/errata/RHSA-2020:5633