[Openstack-operators] Raising the degree of the scandal

Kris G. Lindgren klindgren at godaddy.com
Mon May 18 07:22:19 UTC 2015

I always thought that ebtables was below the stack in the iptables schema - but still part of netfilter - thus should be reasonably fast (I would argue faster than a user space lookup to openvswitchd).  Considering the rules being added are small in number and trivial (on this port allow src/dst mac of blah).  Do you have any performance data showing that its slow?  A quick google search shows nothing relevant :-).  Additionally, libvirt anti-spoofing rules configured via nova using nwfilter uses ebtables to do the anti spoofing rules.  No one seems to complain about the performance of that...

Additionally, some of us don't want to run OVS, so an OVS only solution is effectively imho - crap.  We are actively looking at removing OVS from our environment due to a number of reasons.  So saying if you run neutron and care to have *REAL* network protection - you need to run OVS - seems like a stretch if you aren't using GRE/vxlan tunneling for all of your guests.

I personally agree with George, this stance of "We never said that neutron would provide anti-spoofing on flat networks thus we wont backport this, because it now brings into scope ebtables", seems to be a pretty huge gap in what neutron says it does and the protection it actually provides.  We supply security group rules, but stealing someone else's IP or the gateway that doesn't belong to you - yep that totally cool with us.  It strikes me that neutrons goal to deliver networking is basically two fold. 1.) Provide multi-tenant networking 2.) Make sure tenants cant stomp on each other.  Without number 2 (anti-spoofing) you kinda fail to provide number 1.  Since, flat networks are a 100% supported and viable way of doing tenant networking I would say that this is a bug and should be backported to kilo/juno.

I don't personly buy the new dependency reason, new to neutron - maybe - but not new to people running nova/libvirt.  Ebtables is used by libvirt for nwfilter, assuming an pretty standard libvirt install ebtables should be installed by default.  Additionally, this would have already been a dependency in nova-compute due to anti-spoofing support there.

Kris Lindgren
Senior Linux Systems Engineer
GoDaddy, LLC.

From: Miguel Ángel Ajo <majopela at redhat.com<mailto:majopela at redhat.com>>
Date: Sunday, May 17, 2015 at 6:33 AM
To: George Shuklin <george.shuklin at gmail.com<mailto:george.shuklin at gmail.com>>
Cc: "openstack-operators at lists.openstack.org<mailto:openstack-operators at lists.openstack.org>" <openstack-operators at lists.openstack.org<mailto:openstack-operators at lists.openstack.org>>
Subject: Re: [Openstack-operators] Raising the degree of the scandal

Probably the solution is not selected to be backported because:

  * It's an intrusive change
  * Introduces new dependencies
  * Probably it's going to introduce a performance penalty because eatables is slow.

I'm asking in reviews for this feature to be enabled/disabled via a flag.

In the future I hope OVS with connection tracking to be merged, so then we can
finally have a proper openvswitch_firewall_driver supporting stateful firewalling
without reflective rules or flag matching (one is slow, the other is insecure...)

Miguel Ángel Ajo

On Saturday, 16 de May de 2015 at 23:28, George Shuklin wrote:

On 05/15/2015 07:48 PM, Jay Pipes wrote:
On 05/15/2015 12:38 PM, George Shuklin wrote:
Just to let everyone know: broken antispoofing is not an 'security
issue' and the fix is not planned to be backported to Juno/kilo.


What can I say? All hail devstack! Who care about production?

George, I can understand you are frustrated with this issue and feel
strongly about it. However, I don't think notes like this are all that

Would a more productive action be to tell the operator community a bit
about the vulnerability and suggest appropriate remedies to take?
Ok, sorry.

Short issue: If few tenants use same network (shared network) one tenant
may disrupt network activities of other tenant by sending a specially
crafted ARP packets on behave of the victim. Normally, Openstack
prohibit usage of unauthorized addresses (this feature is called
'antispoofing' and it is essential for multi-tenant clouds). This
feature were subtly broken (malicious tenant may not use other addresses
but still may disrupt activities of other tenants).

Finally, that bug has been fixed. But now they says 'oh, it is not that
important, we will not backport it to current releases, only to
"Libery"' because of new etables dependency.

OpenStack-operators mailing list
OpenStack-operators at lists.openstack.org<mailto:OpenStack-operators at lists.openstack.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-operators/attachments/20150518/3ddc5d35/attachment.html>

More information about the OpenStack-operators mailing list