DDoS pfSense dies on XSYN and OVH scripts.
-
Spoofed packet attacks may be used to overload the kernel route cache. A
spoofed packet attack uses random source IPs to cause the kernel to generate
a temporary cached route in the route table, Route cache is an extraneous
caching layer mapping interfaces to routes to IPs and saves a lookup to the
Forward Information Base (FIB); a routing table within the network stack. The
IPv4 routing cache was intended to eliminate a FIB lookup and increase
performance. While a good idea in principle, unfortunately it provided a very
small performance boost in less than 10% of connections and opens up the
possibility of a DoS vector. Setting rtexpire and rtminexpire to two(2)
seconds should be sufficient to protect the route table from attack.
http://www.es.freebsd.org/doc/handbook/securing-freebsd.html
net.inet.ip.rtexpire=2 # (default 3600)
net.inet.ip.rtminexpire=2 # (default 10 )
#net.inet.ip.rtmaxcache=128 # (default 128 )Anybody has any comments on this because it seems to be deep within the routing stack that this occurs.
-
Just out of curiosity, why would you want to store individual IP addresses in a routing table? Isn't that the whole point subnet masks and routing tables?
-
I dont know… its nowhere to be found in pfSense so I added it manually to get rid of it...
-
So, is there progress being made in coming up with a set of safe defaults that mitigate this attack in 2.2.1?
-
So the change helped?
It sounds like the best thing might be to completely disable. Since that probably can't happen, I wonder if there are values smaller than 2 seconds that may be better. I could see low end boxes being much more sensitive to this issue. A lot of packets can come in a 2 second window with more and more people getting 100Mb+ connections.
-
It didnt help. It takes this forum and store.netgate.com down as well easily.
Throughput needs only to be about 20mbit before it dies and cant handle the traffic.
Its no issue if you use windows firewall as the frontend and the webserver itself can easily handle the traffic both regarding backlog and overall traffic and packets.
Its pfSense related and take it down instantly.
-
-
I havent tested it on FreeBSD.
So I cant relate to that. You are more than welcome to provide me with a FreeBSD target on PM, so we can test.
Its pfSense related and take it down instantly.
So it does NOT happen on FreeBSD?
-
Its pfSense related and take it down instantly.
So it does NOT happen on FreeBSD?
I tried it on a clean freeBSD 10.1
- it was much better than pfsense, not saying that is was 100% up, it had some packetloss as well, but no more then pfsense which instantly or mostly get 90-100% packetloss.
It was without any tuning as well on freebsd 10.1
- it was much better than pfsense, not saying that is was 100% up, it had some packetloss as well, but no more then pfsense which instantly or mostly get 90-100% packetloss.
-
"but no more then pfsense which instantly or mostly get 90-100% packetloss"
So was it less or more. Same? how much less or more?
-
"but no more then pfsense which instantly or mostly get 90-100% packetloss"
So was it less or more. Same? how much less or more?
It really depend on the attack method. SYN-ACK or SYN-FIN, packet size etc.
But after over 100 test i would still say pfsense could have done it better. It is not handling SYN request correctly. I don't have the skills to fix it or go deeper into it.
Result:
FreeBSD 10.1 = every 7-8th ping = packetloss (avg packetloss 10-20%)
PFsense = every 1-2nd ping packetloss (avg packetloss 80-90%)So there is a notable difference clearly. PFsense was running stateful. Stateless helped a little bit.
-
Anybody with serious freeBSD skills wanting to help us test this??
Money could be involved :D
-
I wonder if getting someone from the FreeBSD forums may be useful at this point.
-
We have had ZERO response from the pfSense guys. This is quite disturbing since we can take down any site protected by pfSense as it is.
Right now its better to run without pf at all and rely on windows Firewall on VM's and let pf handle the routing. Only way to survive the attacks as it is.
Thinking og getting my old ISA2006 online again to test and see how it behaves.
-
A little more…
http://youtu.be/boa7bbeKRG0
Now we can limit the states that is created but basic routing is not working....still.
-
youtu huh?
-
Video is private :
-
Better??
-
Have you tried PFSense 2.2? I know FreeBSD 10.1 was tested and PFSense 2.1.5 was tested, but those are two quite different versions of FreeBSD.
I could let you try it against my box, but only a few quick tests, wife likes to watch Netflix :-)
-
We have had ZERO response from the pfSense guys. This is quite disturbing since we can take down any site protected by pfSense as it is.
Right now its better to run without pf at all and rely on windows Firewall on VM's and let pf handle the routing. Only way to survive the attacks as it is.
Thinking og getting my old ISA2006 online again to test and see how it behaves.
You didn't try, now did you? Did you send a message to coreteam? To Chris, or me, or…?
No, you just randomly attacked the store and forum.