Activity log for bug #1902917

Date Who What changed Old value New value Message
2020-11-04 17:13:22 David Sinquin bug added bug
2020-11-04 17:13:22 David Sinquin attachment added anti-spoof.patch https://bugs.launchpad.net/bugs/1902917/+attachment/5431130/+files/anti-spoof.patch
2020-11-04 17:30:05 Jeremy Stanley description Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES). This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past $NINETY_DAYS and will be made public by or on that date even if no fix is identified. Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES).
2020-11-04 17:30:24 Jeremy Stanley description This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past $NINETY_DAYS and will be made public by or on that date even if no fix is identified. Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES). This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past 2021-02-02 and will be made public by or on that date even if no fix is identified. Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES).
2020-11-04 17:30:44 Jeremy Stanley bug task added ossa
2020-11-04 17:30:57 Jeremy Stanley ossa: status New Incomplete
2020-11-04 17:31:10 Jeremy Stanley bug added subscriber Neutron Core Security reviewers
2020-11-05 18:16:29 Jeremy Stanley description This issue is being treated as a potential security risk under embargo. Please do not make any public mention of embargoed (private) security vulnerabilities before their coordinated publication by the OpenStack Vulnerability Management Team in the form of an official OpenStack Security Advisory. This includes discussion of the bug or associated fixes in public forums such as mailing lists, code review systems and bug trackers. Please also avoid private disclosure to other individuals not already approved for access to this information, and provide this same reminder to those who are made aware of the issue prior to publication. All discussion should remain confined to this private bug report, and any proposed fixes should be added to the bug as attachments. This embargo shall not extend past 2021-02-02 and will be made public by or on that date even if no fix is identified. Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES). Using Open vSwitch on an ussuri setup with neutron 16.0.0, VMs can send ICMPv6 Neighbor Advertisement packets with no check on their content to mis-direct traffic to them. This looks a lot like https://bugs.launchpad.net/neutron/+bug/1502933 except it affects Open vSwitch driver rather than iptables. Pre-condition: - two running VMs in the same L2 flat network with IPv6 connectivity How to reproduce: - manually add a custom IPv6 on one (e.g. `ip -6 address add fe80::42/64 dev eth0`) - ping it from the other, expecting no answer (e.g. `ping -c1 -w1 "fe80::42%eth0"`) - confirm it updated its neighbor table (e.g. `ip -6 neigh get fe80::42/64 dev eth0`) Expected behavior: - VMs should not be able to advertise IPv6 addresses that are not assigned to them e.g. through neighbor advertisement packets. Affected versions: The Openstack version I am using is Ussuri with neutron 16.0.0, with minor changes on commit df5b28c2e5. From a quick review of the diff with master, I think the issue is also present there. Network part is using Open vSwitch on flat network with Xen 4.13 as hypervisor. Similarly, UDP packets using DHCP query ports (for DHCP v4 or v6) can be sent with arbitrary IP and MAC addresses. And I think we are fine for other ICMP types (redirect, router renumbering for ICMPv6) as I did not managed to have such packets sent between VMs but I fail to understand how it gets filtered. I am attaching a couple patches that I think fix the issues but include no tests and include changes that we may want to avoid (in case plugins out of neutron git repo use firewall.ICMPV6_ALLOWED_EGRESS_TYPES).
2020-11-05 18:16:40 Jeremy Stanley information type Private Security Public Security
2020-11-05 18:20:40 Jeremy Stanley cve linked 2015-8914
2020-11-10 14:41:15 Rodolfo Alonso neutron: importance Undecided High
2020-11-11 09:36:46 Dr. Jens Harbott bug added subscriber Dr. Jens Harbott
2021-02-09 06:20:32 Summer Long bug added subscriber Summer Long
2021-02-16 21:43:02 Slawek Kaplonski neutron: assignee Slawek Kaplonski (slaweq)
2021-02-19 10:44:38 Slawek Kaplonski neutron: status New In Progress
2021-02-27 20:11:05 Slawek Kaplonski neutron: status In Progress Fix Released
2021-03-05 01:40:14 Summer Long cve linked 2021-20267
2021-03-05 15:35:51 Jeremy Stanley ossa: status Incomplete In Progress
2021-03-05 15:35:59 Jeremy Stanley ossa: importance Undecided High
2021-03-05 15:36:05 Jeremy Stanley ossa: assignee Jeremy Stanley (fungi)
2021-03-05 15:36:19 Jeremy Stanley summary Anti-spoofing bypass using Open vSwitch Anti-spoofing bypass using Open vSwitch (CVE-2021-20267)
2021-03-19 13:35:18 Slawek Kaplonski neutron: status Fix Released In Progress
2021-05-10 12:15:14 Antoine Eiche bug added subscriber Antoine Eiche
2021-05-14 13:57:38 OpenStack Infra neutron: status In Progress Fix Released
2021-05-31 19:36:52 OpenStack Infra tags in-stable-train
2021-06-01 13:48:48 OpenStack Infra tags in-stable-train in-stable-train in-stable-ussuri
2021-06-04 09:30:55 OpenStack Infra tags in-stable-train in-stable-ussuri in-stable-rocky in-stable-train in-stable-ussuri
2021-06-04 09:31:04 OpenStack Infra tags in-stable-rocky in-stable-train in-stable-ussuri in-stable-queens in-stable-rocky in-stable-train in-stable-ussuri
2021-06-04 10:20:35 OpenStack Infra tags in-stable-queens in-stable-rocky in-stable-train in-stable-ussuri in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri
2021-06-04 20:51:11 OpenStack Infra tags in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria
2021-06-06 06:46:16 OpenStack Infra tags in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-wallaby
2021-06-11 08:29:36 Bernard Cafarelli tags in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-wallaby neutron-proactive-backport-potential
2021-06-11 08:44:02 Bernard Cafarelli tags in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-wallaby neutron-proactive-backport-potential in-stable-queens in-stable-rocky in-stable-stein in-stable-train in-stable-ussuri in-stable-victoria in-stable-wallaby
2021-07-12 17:41:15 OpenStack Infra ossa: status In Progress Fix Released
2021-08-02 16:56:01 Jeremy Stanley summary Anti-spoofing bypass using Open vSwitch (CVE-2021-20267) [OSSA-2021-001] Anti-spoofing bypass for Open vSwitch networks (CVE-2021-20267)