Chinaunix首页 | 论坛 | 博客
  • 博客访问: 152233
  • 博文数量: 22
  • 博客积分: 854
  • 博客等级: 军士长
  • 技术积分: 415
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-08 13:44
文章存档

2013年(1)

2012年(5)

2011年(1)

2010年(5)

2009年(2)

2008年(8)

分类: 网络与安全

2008-10-17 17:20:51

本文档的Copyleft归skyfeces所有, 使用GPL发布, 可以自由拷贝, 转载, 转载时请保持文档的完整性, 严禁用于任何商业用途。
msn: skyfeces@139.com
来源:http://fordme.cublog.cn

还是忍不住要考虑重叠包的处理。

重叠包(overlap)不等同于重传包,可以说重传包是重叠包的一种特例,即完全重叠。重叠包在目标端的取舍跟操作系统类型有关,windows是保留老的报文,而linux等UNIX类操作系统,一般是选择新的报文部分。       

而很多安全产品在检测的时候,一般是要么选择老的报文,要么选择新的报文,特别是在线设备,一般是选择老的报文,因为老的报文已经发出去,于是把新的报文丢弃。这样攻击信息可以放入重叠部分的新报文中,暗渡陈仓,避过安全产品的检查,组合出需要的内容。       

对老报文和新报文都进行检测也是比较麻烦的,因为既然是重叠包,一般都是需要进行重组的,重叠包的发现实在第二个报文到来时才知道,这时老的报文已经被缓存了,先把老报文重组好检测完,再把新报文重组一遍,再检测,显然是不太现实。       

并且即使上面的思路得以实现,由于目标系统不同,攻击可能是无效的,即使检测出攻击,也是误报。比较有效的方法应该是先对目标系统进行操作系统识别,目前已经有开源的实现方式p0f是比较好的代表,然后对识别结果进行利用,针对目标系统对重叠包进行重组和检测,进行有效的识别攻击。
阅读(1718) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~