ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

TCP标志信息

2022-04-17 04:02:17  阅读:182  来源: 互联网

标签:标志 匹配 报文 信息 TCP 分片 tcp 192.168


TCP标志信息

格式:tcp-flag { ack | established | fin | psh | rst | syn | urg }*

在高级ACL中,当协议类型指定为TCP时,设备支持基于TCP标志信息过滤报文。

TCP报文头有6个标志位:
  • URG(100000):标识紧急指针有效

  • ACK(010000):标识确认序号有效

  • PSH(001000):标识接收方应该尽快将这个报文段上交给应用层

  • RST(000100):标识重建连接

  • SYN(000010):同步序号,用来发起一个连接

  • FIN(000001):标识发送方完成发送任务

TCP标志信息中的established,表示标志位为ACK(010000)或RST(000100)。

指定tcp-flag的ACL规则可以用来实现单向访问控制。假设,要求192.168.1.0/24网段用户可以主动访问192.168.2.0/24网段用户,但反过来192.168.2.0/24网段用户不能主动访问192.168.1.0/24。可通过在设备上连接192.168.2.0/24网段的接口入方向上,应用ACL规则来实现该需求。

由TCP建立连接和关闭连接的过程可知,只有在TCP中间连接过程的报文才会ACK=1或者RST=1。根据这个特点,配置如下两种ACL规则,允许TCP中间连接过程的报文通过,拒绝该网段的其他TCP报文通过,就可以限制192.168.2.0/24网段主动发起的TCP连接。

  • 类型一:配置指定ackrst参数的ACL规则

    rule 5 permit tcp source 192.168.2.0 0.0.0.255 tcp-flag ack  //允许ACK=1的TCP报文通过       
    rule 10 permit tcp source 192.168.2.0 0.0.0.255 tcp-flag rst   //允许RST=1的TCP报文通过
    rule 15 deny tcp source 192.168.2.0 0.0.0.255  //拒绝该网段的其他TCP报文通过
    
  • 类型二:配置指定established参数的ACL规则

    rule permit tcp source 192.168.2.0 0.0.0.255 tcp-flag established  // established表示ACK=1或者RST=1,表示允许TCP中间连接过程的报文通过
    rule deny tcp source 192.168.2.0 0.0.0.255     //拒绝该网段的其他TCP报文通过
    

IP分片信息

格式:none-first-fragment

基本ACL和高级ACL支持基于IP分片信息过滤报文。

IP分片除了首片报文外,还有后续分片报文,又叫做非首片分片报文。仅首片分片报文携带四层信息(如TCP/UDP端口号等),后续分片报文均不携带。网络设备收到分片报文后,会判断其是否是最后一个分片报文。如果不是,则为其分配内存空间,以便于最后一个分片报文到达后完成重组。黑客可以利用这一点,向接收方设备发起分片报文攻击,始终不向接收方发送最后一个分片报文,使得接收方的内存得不到及时释放(接收方会启动一个分片重组的定时器,在定时器超时前如果无法完成重组,将向发送方发送ICMP重组超时差错报文;如果定时器超时后仍未完成重组,则丢弃已存储的分片报文)。在分片报文发送数量很多并且发送速度很快的情况下,接收方的内存很容易被占满,从而导致接收方没有足够的内存资源处理其他正常的业务。

为了解决这个问题,可以配置指定none-first-fragment匹配项的ACL规则来阻塞非首片分片报文,从而达到防范分片报文攻击的目的。

针对非分片报文、首片分片报文、非首片分片报文这三类报文,ACL的处理方式如表7所示。

表7 ACL对IP分片报文的处理方式

规则包含的匹配项

非分片报文

首片分片报文

非首片分片报文

三层信息(如源/目的IP地址)

三层信息匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

三层信息匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

三层信息匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

三层信息 + 四层信息(如TCP/UDP端口号)

三层和四层信息都匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

三层和四层信息都匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

不匹配,转下一条规则进行匹配

三层信息 + none-first-fragment

不匹配,转下一条规则进行匹配

不匹配,转下一条规则进行匹配

三层信息匹配上,则返回匹配结果(permit/deny);未匹配上,则转下一条规则进行匹配

例如,ACL 3012中存在以下规则:

#                                   
acl number 3012                                                                 
 rule 5 deny tcp destination 192.168.2.2 0 none-first-fragment                  
 rule 10 permit tcp destination 192.168.2.2 0 destination-port eq www           
 rule 15 deny ip                                                                
#  
  • 该报文是非分片报文或首片分片报文时:如果该报文的目的端口号是80(www对应的端口号是80),则报文与rule 10匹配,报文被允许通过;如果该报文的目的端口号不是80,则报文与rule 15匹配,报文被拒绝通过。

  • 该报文是非首片分片报文时:该报文与rule 5匹配,报文被拒绝通过。

标签:标志,匹配,报文,信息,TCP,分片,tcp,192.168
来源: https://www.cnblogs.com/endv/p/16154902.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有