免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3026 | 回复: 18
打印 上一主题 下一主题

一次对Linux的攻击测试[欢迎大家讨论] [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-26 10:34 |只看该作者 |倒序浏览
  1. 被攻击机器
  2. CII 1.7G 512M DDR,双系统:
  3. freebsd 5.5
  4. linux 2.6.16
复制代码

  1. 攻击机器
  2. CII 1.7G 256M DDR
复制代码

  1. 攻击工具
  2. kill 参附件
复制代码


描述:
在被攻击机器上运行Linux系统,在攻击机器上运行kill工具:
./kill X.X.X.X 1000 64
sniffer观察,kill 工具向被攻击机器发送大量的相同的IP小包,即来源地址/目的地址/TOS/TTL……等完全一样,TCP协议,FIN标志位;

被攻击机器在20Mb/s不到的流量,就基本趴下了!

在prerouting 链拦截所有TCP包,这样,流量观察,被攻击机器处理流量大幅提升,不过在32Mb左右也大量丢包了!!!

感觉上很像一个老漏洞:
  1. 路由缓冲用于缓冲路由通信,以对后续的转发进行判断,当包达到的时候,IP路由代码就会检查通信包并根据路由缓冲进行判断,如果存在缓冲信息,就会重用,否则将产生新路由。Linux内核的网络代码在处理IP头具有相同IPv4源和目的地址,及相同TOS值的包存在缺陷,攻击者精心构建上面描述的包发送给Linux,可导致每个包的路由条目连接到相同的HASH链中,这就使得当路由列表很长的时查找会变的非常消耗资源,因此大量发送此类包,可导致服务器消耗大量系统资源而产生拒绝服务。根据测试,一般每秒发400个此类包可使受攻击的系统消耗4G的RAM。
复制代码


但是我的内核是新内核,按理来讲,不应该有这个漏洞的,查看了内核源码,路由算法也是改了的。不像2.4.20以下那些老版本;

在同样的机器上运行freebsd,freebsd则在被攻击的情况下运行得很好,不丢包(不过CPU负载也高,中断调度占用大量CPU资源,可以理解,要处理在量的小包)

欢迎大家跟贴讨论,附件工具仅作测试使用,不要拿来做违法乱纪的事情喔!

kill

8.61 KB, 下载次数: 192

Linux DoS测试工具

论坛徽章:
0
2 [报告]
发表于 2006-09-26 11:03 |只看该作者
俺心目中的fb果然强悍,(*^-^*)

论坛徽章:
0
3 [报告]
发表于 2006-09-26 11:15 |只看该作者
原帖由 小猪快跑 于 2006-9-26 11:03 发表
俺心目中的fb果然强悍,(*^-^*)


不是讨论谁强的问题,这个问题,在N个地方也有争论了……

现在只是Linux在这种攻击面前无能为力,估计是内核栈哪儿有问题,目前除了提高硬件处理能力,还没有想到更好的解决办法……

论坛徽章:
0
4 [报告]
发表于 2006-09-26 12:04 |只看该作者
我还没仔细看内核中处理路由缓冲的代码,但是我碰到了一个问题,也是明显处在这里的。
构造一种流量,源地址、源端口随机,但是目的地址、目的端口、TOS、TTL、TCP Option固定。
64bytes的包大约在20000pps的时候就已经不行了,系统几乎没有响应。
如果我在路由查找的时候做点手脚,跳过ip_route_input查找,而是直接将数据报从转发出去,则没有问题。

这里想请教LZ你一个问题,路由表的hash链的参数都哪些?需要源地址吗?
我感觉只要知道目的地址对应哪个接口就好了吧?
这里自己没看过,希望赐教!

论坛徽章:
0
5 [报告]
发表于 2006-09-26 16:56 |只看该作者
原帖由 Jobs.AE@ 于 2006-9-26 12:04 发表
我还没仔细看内核中处理路由缓冲的代码,但是我碰到了一个问题,也是明显处在这里的。
构造一种流量,源地址、源端口随机,但是目的地址、目的端口、TOS、TTL、TCP Option固定。
64bytes的包大约在20000pps的时 ...


好像我们的是一个问题喔……呵呵

论坛徽章:
0
6 [报告]
发表于 2006-09-26 17:27 |只看该作者
原帖由 独孤九贱 于 2006-9-26 16:56 发表


好像我们的是一个问题喔……呵呵


我也觉得是!呵呵~~~

但我目前不清楚这个是BUG还是说Linux的协议栈只能达到这个性能。

又没有什么有力的证据能够证明是BUG吗?

我做个一个尝试,发送不带Options的64bytes的TCP报文,源地址随机变化,
协议栈可以承受60000pps以上,注意,是6万,比带有Options的高了3倍啊!

多了一个options,差别就那么大吗?想不明白。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
7 [报告]
发表于 2006-09-26 20:44 |只看该作者
这个工具对本机好像无效

CPU占用不少
内存没有变化

我的系统是CentOS 4.4 内核2.6.18 X86_64

不过X86的LINUX路由不是一般的慢
还没有TCP代理快
NAT更是慢的一塌胡涂
小包还是NP系统的强项,百兆的话硬件比X86还便宜(NP开发工具实在太贵了)

论坛徽章:
0
8 [报告]
发表于 2006-09-26 21:11 |只看该作者
原帖由 safedead 于 2006-9-26 20:44 发表
这个工具对本机好像无效

CPU占用不少
内存没有变化

我的系统是CentOS 4.4 内核2.6.18 X86_64

不过X86的LINUX路由不是一般的慢
还没有TCP代理快
NAT更是慢的一塌胡涂
小包还是NP系统的强项,百兆的话 ...


您用什么NP啊?
IXP425吧。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
9 [报告]
发表于 2006-09-26 21:30 |只看该作者

回复 8楼 Jobs.AE@ 的帖子

我没用过NP,老有推销NP的人告诉我说425比p4平台百兆的工控板子效果好
我主要用p4平台百兆和假千兆工控主板
路由性能的确不咋样,特别是小包
在假千兆上跑路由模式,一共只有两条路由配置,一个连接经过,CPU占用高达40%
我都要疯掉了

这几天搞了几块超微的服务器主板,跑64位LINUX做TCP代理转发
速度竟然比路由和NAT都好
代理的主要缺点是高并发困难,还有就是内存消耗巨大

听说实时LINUX的路由效果好,我没用过

论坛徽章:
0
10 [报告]
发表于 2006-09-27 10:41 |只看该作者
原帖由 safedead 于 2006-9-26 21:30 发表
我没用过NP,老有推销NP的人告诉我说425比p4平台百兆的工控板子效果好
我主要用p4平台百兆和假千兆工控主板
路由性能的确不咋样,特别是小包
在假千兆上跑路由模式,一共只有两条路由配置,一个连接经过,CPU占 ...


P4平台有很多问题,一个重要的问题是P4本身的流水结构不是很好,太长了。
而且使用P4的工控平台的设计难度也高于P3/Celeron系列CPU。
425我有一定的经验,其实也不会有特别明显的差别,要说差别,425用的不是普通的Linux。
做425开发都是用MVL的,都是经过优化的,并参考了RealTimeLinux的设计,So,性能略好吧。
者还要取决于板子上网卡芯片的选择,网卡驱动的配合等等因素。
整体的改良才能使性能有较好的提升,也要下不少功夫的。

听你这样一说,我到是想研究一下Real Time Linux的路由是怎么处理的了,也许能有所改进呢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP