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 <[email protected]<mailto:[email protected]>>
Date: Sunday, May 17, 2015 at 6:33 AM
To: George Shuklin <[email protected]<mailto:[email protected]>>
Cc: 
"[email protected]<mailto:[email protected]>"
 
<[email protected]<mailto:[email protected]>>
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.

https://bugs.launchpad.net/bugs/1274034

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
productive.

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
[email protected]<mailto:[email protected]>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

_______________________________________________
OpenStack-operators mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators

Reply via email to