SYNPROXY:最廉价的抗DoS攻击方案

对于防御Dos攻击来说,我这辈子都不一定能见到完美的解决方案。虽然,有成吨的商用防火墙,可以有效的防御Dos攻击,但是他们都太贵了。作为一个学术型人才,我倾向于使用简单廉价的组合来解决问题—x86+GNU/Linux。在linux 3.13内核中加入了SYNPROXY这个功能,它的实现基于netfilter framework 和 connection tracking 模块。

我猜测,他会把来自客户端的初始SYN包标记成UNTRACKED然后直接导入iptables的"SYNPROXY"的动作(类似ACCEPT,NFQUEUE和DROP),这时内核会扮演网关设备的角色继续跟客户端进行TCP的常规握手流程,SYNPROXY会等到最终的ACK(三次握手)的cookie被验证合法后才会开始让包真正的进入目标端。

Jesper Dangaard Brouer曾给我我一份上个月DEVCON的报告,根据里面的内容,我和同事也做了实验,结果还不错。

下面是测试结果,大家随意感受一下

平台: Debian, SLES-12-beta2
硬件: Laptop, Server, 100Mbps Switch
工具: hping3, metasploit
root@d6-test:/home/shawn# iptables -t raw -A PREROUTING -i eth0 -p tcp --dport 8888 --syn -j NOTRACK
root@d6-test:/home/shawn# iptables -A INPUT -i eth0 -p tcp --dport 8888 -m state --state UNTRACKED,INVALID -j SYNPROXY --sack-perm --timestamp --mss 1480 --wscale 7 --ecn
echo 0 > /proc/sys/net/netfilter/nf_conntrack_tcp_loose
结果:
不使用 SYNPROXY: ksoftirq is around 8%-9%
使用 SYNPROXY: ksoftirq is less than 3%

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2014-03-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

微软发布12月安全更新,修复34项安全问题

微软2017年12月发布的补丁星期二(2017年12月12日)更新解决了30多个安全漏洞,其中包括19个影响Internet Explorer和Edge网页浏览...

36280
来自专栏黑白安全

渗透测试

渗透测试,也称为笔测试,是针对您的计算机系统的一个模拟网络攻击,用于检查可利用的漏洞。在Web应用程序安全性方面,渗透测试通常用于增强Web应用程序防火墙(WA...

23210
来自专栏大数据文摘

家用路由器,已遭黑客攻击!

38180
来自专栏FreeBuf

一个漏洞能潜伏多少年?细数那些有名的高龄安全漏洞

在评估漏洞影响时,人们关注的往往是漏洞风险,而实际上,漏洞潜伏的时间也是一个非常重要的因素。时间跨度大,也就意味着在此期间使用这些含有漏洞的软件的设备更多,影响...

43760
来自专栏bboysoul

使用esp8266制作wifi干扰器

这个东西,说真的对现在的无线网络环境影响其实不是很大了,首先它只能玩2.4ghz的无线,其次这个模块不是特别的可靠,运行的时候温度会很高,买来玩玩还是可以的

17830
来自专栏源哥的专栏

基于linux的嵌入IPv4协议栈的内容过滤防火墙系统(2)-概要引言

概要:在Linux系统下,具有图形界面的防火墙系统很少,而包含内容过滤的防火墙系统更可以说是少之又少,本程序不仅具有防火墙功能,而且可以对rar、zip压缩格式...

7430
来自专栏FreeBuf

从安全漏洞看印度国家银行APP为何“技术落后10年”

2007年的时候,我在印度最大的国有银行中的一家注册了一个账号,这个国家的银行(政府或者民营)普遍所使用的技术与当前水平相比至少落后了10年。 2015年末,我...

22070
来自专栏FreeBuf

如何用一个废旧的笔记本打造一个家庭网络服务器?

本来好好的笔记本的,可偏偏屏幕说烂就烂,那就干脆不要了,改造改造吧! 他本来长这样的,如图: ? 什么,你看见了水印….老哥,别在意这些细节。 简单说一下配置:...

42880
来自专栏嵌入式程序猿

制造商代码字段在J1939中的位置你搞懂了吗?

SAE 自推出CAN的高层协议,J1939标准后,在商用车,卡车,舰船,农机等上面应用非常广泛,标准要求每一个节点都有一个8字节的名字域,用来识别,其中有11位...

30140
来自专栏FreeBuf

漏洞预警:厄运cookie(Misfortune Cookie)漏洞影响全球1200万台路由器

一个名为“厄运cookie(Misfortune Cookie)”的严重漏洞正在影响全球1200万台路由器安全,D-Link、 TP-Link、华为、中兴等品牌...

22870

扫码关注云+社区

领取腾讯云代金券