首页 > 其他分享 >IP fragment是什么意思?如何防御IP fragment攻击?

IP fragment是什么意思?如何防御IP fragment攻击?

时间:2023-06-17 12:06:32浏览次数:41  
标签:fragment IP 报文 Fragment 防御 分片 接收

IP报文中,与报文分片有关的几个字段是:DF(Don’t Fragmentate)位、MF 位,Fragment Offset、Length。DF和MF就是前面提到3位标识位中的第二和第三位,Fragment Offset就是“13位分片偏移”字段,Length就是“16位报文总长度”字段。如果上述字段的值出现矛盾,而设备处理不当,会对设备造成一定的影响,甚至瘫痪。Ip-fragment就是故意制造这种存在字段上相互矛盾的报文进行攻击的。


例如:

a). DF位被置位(标明报文未分片),而MF位同时被置位或 Fragment Offset 不为0(表示是分片报文);

b). DF 位为0(标明是分片报文),而Fragment Offset + Length > 65535(未分片) ;

这些都有可能引起系统的崩溃,防御方法同Teardrop一样,都是对报文进行检查,丢弃非法报文。


分片带来的问题

1、 分片带来的性能消耗

       分片和重组会消耗发送方、接收方一定的CPU等资源,如果存在大量的分片报文的话,可能会造成较为严重的资源消耗;       分片对接收方内存资源的消耗较多,因为接收方要为接收到的每个分片报文分配内存空间,以便于最后一个分片报文到达后完成重组。

2、分片丢包导致的重传问题

       如果某个分片报文在网络传输过程中丢失,那么接收方将无法完成重组,如果应用进程要求重传的话,发送方必须重传所有分片报文而不是仅重传被丢弃的那个分片报文,这种效率低下的重传行为会给端系统和网络资源带来额外的消耗。

3、分片攻击

       黑客构造的分片报文,但是不向接收方发送最后一个分片报文,导致接收方要为所有的分片报文分配内存空间,可由于最后一个分片报文永远不会达到,接收方的内存得不到及时的释放(接收方会启动一个分片重组的定时器,在一定时间内如果无法完成重组,将向发送方发送ICMP重组超时差错报文),只要这种攻击的分片报文发送的足够多、足够快,很容易占满接收方内存,让接收方无内存资源处理正常的业务,从而达到DOS的攻击效果。

IP fragment是什么意思?如何防御IP fragment攻击?_重传

4、安全隐患

       由于分片只有第一个分片报文具有四层信息而其他分片没有,这给路由器、防火墙等中间设备在做访问控制策略匹配的时候带来了麻烦。       如果路由器、防火墙等中间设备不对分片报文进行安全策略的匹配检测而直接放行IP分片报文,则有可能给接收方带来安全隐患和威胁,因为黑客可以利用这个特性,绕过路由器、防火墙的安全策略检查对接收方实施攻击;       如果路由器、防火墙等中间设备对这些分片报文进行重组后在匹配其安全策略,那么又会对这些中间设备的资源带来极大的消耗,特别是在遇到分片攻击的时候,这些中间设备会在第一时间内消耗完其所有内存资源,从而导致全网中断的严重后果。

那我们要怎么做才能预防Ip-fragment攻击呢?

1、对于包过滤设备或者入侵检测系统来说,首先通过判断目的端口号来采取允许/禁止措施。但是由于通过恶意分片使目的端口号位于第二个分片中,因此包过滤设备通过判断第一个分片,决定后续的分片是否允许通过。但是这些分片在目标主机上进行重组之后将形成各种攻击。通过这种方法可以迂回一些入侵检测系统及一些安全过滤系统。

2、利用扩展ACL防止IP Fragment攻击,命令如下:

access-list 101 permit/deny <协议> <源> <目的> fragment '在命令后加个fragment就行了。特别注意的是,带有四层信息的ACL和带Fragment的ACL结合在一起用效果会更好的

3、提高企业安全管理员的技术程度,有效保证及时发现IP Fragment攻击,及时制止

感谢您的阅读,若是想要了解更多服务器技术干货,加个关注再走吧~

标签:fragment,IP,报文,Fragment,防御,分片,接收
From: https://blog.51cto.com/u_16129597/6504629

相关文章

  • [NOIP2002 提高组] 均分纸牌
    题目描述有\(N\)堆纸牌,编号分别为\(1,2,\ldots,N\)。每堆上有若干张,但纸牌总数必为\(N\)的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为\(1\)堆上取的纸牌,只能移到编号为\(2\)的堆上;在编号为\(N\)的堆上取的纸牌,只能移到编号为\(N-1\)的堆上;其他......
  • ICT应用解决方案实验02-IPv6专题
    ICT应用解决方案实验02-IPv6专题1项目概况1.1项目拓扑1.2项目概况IPv4迄今为止已经使用了30多年,并于2019年11月25日,被官方宣布所有剩余可用IPv4地址已全部分配完。随着IPv4地址的耗尽,而互联网依旧在发展,互联网接入设备也继续增多。企业和运营商为了从IPv4网络迁移到IPv6网......
  • ipa上传AppStore之密钥上传
    将ipa提交到AppStore需要Mac电脑操作,现在大部分的程序员都是使用混合开发平台windows系统的电脑,自己装虚拟机过程又繁琐。使用此工具只需要网页上点两下帮你完成这些鸡毛蒜皮事,让你有更多的时间花在改bug上。1.打开苹果应用商店管理后台获取密钥,地址https://appstoreconnect.app......
  • 高并发监控-Sleuth 与 Zipkin 服务链路追踪
    一、Sleuth概念为什么需要SpringCloudSleuth#微服务架构是一个分布式架构,它按业务划分服务单元,一个分布式系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性,如果出现了错误和异常,很难去定位。主要体现在,一个请求可能需要调用很多个服务,而内部服务的调用复杂性,决定......
  • JavaScript & TypeScript 学习总结
    @目录JavaScriptJavaScriptBOM对象JavaScriptDocument对象JavaScript事件处理JavaScript变量JavaScript函数基础JavaScript流程控制JavaScript数据类型JavaScript数组JavaScript运算符JavaScript正则表达式JavaScript字符串函数TypeScript简单示例JavaScriptJavaScriptBOM对......
  • NOIP2020 T2 字符串匹配【题解】
    NOIP2020T2字符串匹配首先声明这篇题解存在大多数让我这种人看懂的废话,如果想要速通,请另寻他解题目简化定义字符串乘法为\(AB\)为把两个字符串拼起来,定义阶乘\(A^i\)表示\(\prod_{1}^iA\)再定义\(F(S)\)为\(S\)中出现奇数次字符的数量现给定一个字符串\(S\),求......
  • 【BZOJ 3156】防御准备 题解
    原题令\(S_{i}=\sum_{j=1}^{i}j\),\(f_{i}\)为处理到第\(i\)个位置放置守卫塔的最小花费。观察题意,容易得到在\((1<=j<=i-1)\)时,有\(f_{i}=min\left\{f_{j}+\sum_{k=j+1}^{i-1}(i-k)+a_{i}\right\}\)①\(f_{i}=min\left\{f_{j}+\sum_{k=j+1}^{i-1}(i-k)\ri......
  • javaScript核心知识点
      一、JavaScript简介       一、JavaScript语言的介绍:JavaScript是基于对象和原型的一种动态、弱类型的脚本语言       二、JavaScript语言的组成:JavaScript是由核心语法(ECMAScript)、文档对象模型(DOM)、浏览器对象模型(BOM)组成的       三......
  • Chrome 禁用 javascript
    步骤1.打开控制台:右键>检查2.在控制台页面快捷键ctrl+shift+p然后输入javascript找到disabledjavaScript.解除禁用: ctrl+shift+p然后输入enablejavaScript找到enablejavaScrip. ......
  • RK3588(YD-88)瑞芯微 Rockchip RK3588 开发板套件,支持8G内存,32G eMMC存储
     一、产品简介1.产品简述:YD-88 是基于瑞芯微RK3588 的一款核心板RK3588是一颗高性能、低功耗的应用处理器芯片,专为ARMPC、边缘计算、个人移动互联网设备和其它多媒体应用而设计,是由4个A76和4个A55与独立的NEON协处理器集成的。RK3588内置了多种功能强大的嵌入式......