访问控制列表和IP分段

www.net130.com     日期:2004-6-14    浏览次数:
出处:cisco网站

前言

此 白皮书解释这不同的访问控制表(ACL)条目并且什么发生当不同的种 类信息包遇到这些多种条目。用于ACLs阻拦IP信息包从被路 由器转发。

http://www.cisco.com/MT/eval/zh/nopage.html" target=_blank>RFC 1858 leavingcisco.com 报道IP段过滤的安 全注意事项并且突出显示对介入TCP信息包、微小的碎片攻击和交迭 的碎片攻击的IP段的主机的二次攻击。拦截这些攻击是理想 的因为他们能攻陷主机,或者阻塞所有其内部资源。

RFC 1858 leavingcisco.com 也描述二个方法保卫这些攻 击,直接和间接。在直接方法,最小长度小于的初始分段被 丢弃。如果开始8个字节原始IP数据报,间接方法介入丢弃片 段集的第二个片段。请参阅 RFC 1858 leavingcisco.com 关于更详细的细节。

传统上, 信息包过滤器类似ACLs被应用于不分片和IP信息包的初始分段因为 他们包含第三层和4 ACLs能匹配为允许或拒绝决策的信息。因为他们在信息包,可以被阻拦根据第三层信息非初始片段通过ACL 传统上允许; 然而,因为这些信息包不包含第四层信息,他 们在ACL条目不匹配第四层信息,如果存在。因为收到片段的 主机不能重新召集原始IP数据报没有初始分段,允许IP数据包的非 初始片段通过是可接受的。

防火墙可 能也使用对阻拦信息包通过维护信息包碎片表源和目的地IP地址、 协议和IP标注的ID。Cisco PIX防火墙和 ® Cisco IOS防火墙能过滤特定数据流的所有片段通过 维护信息此表,但它是太消耗大的以至于不能执行此在一个路由器 为基本的ACL功能。 防火墙的主要工作是对阻拦信息包,并 且其辅助角色是路由信息包; 路由器的主要工作是路由信息 包,并且其辅助角色是阻拦他们。

二 个变化做在Cisco IOS软件版本上12.1(2) 和12.0(11)解决包围TCP 片段的一些安全问题。 间接方法,如所描述在 RFC 1858 leavingcisco.com ,是被实施 作为标准TCP/IP输入信息包充分检查一部分。变动也做了对 ACL 功能关于非初始片段。

ACL表项的类型

有六不同种类的ACL线路 ,并且其中每一有一个后果如果信息包执行或不配比。 在以 下列表,FO = 0指示不分片或一个初始分段在TCP流,FO > 0表明信 息包是一个非初始片段,L3意味着第三层,并且L4意味着第四层。

注意: 当有时第 三层和第四层信息在ACL线路和 片段 关键字存在,ACL活动为许可证是保守的并且拒绝动作 。动作是保守的因为您不想要偶然地拒绝流的一个分段的部 分因为片段不包含充足的信息匹配所有过滤器属性。 在拒绝 事例,而不是拒绝一个非初始片段,下ACL条目被处理。在许 可证事例,假设第四层信息在信息包,如果可用,在ACL 线路匹配 第四层信息。

许可证ACL线路带有L3仅信息

  1. 如果信息包的L3信息在ACL线路匹配 L3 信息,允许。

  2. 如果信息包的L3信 息在ACL线路不匹配L3信息,下ACL条目被处理。

拒绝ACL线路带有L3仅信息

  1. 如果信息包的L3信息 在ACL线路匹配L3 信息,它否认。

  2. 如果信息包的L3信息在ACL线路不匹配L3信息,下ACL条目被处理。

允许ACL线 路带有L3仅信息,并且片段关键字存在

  1. 如果信息包的L3信息在ACL线路匹配L3 信息,信息 包碎片偏移被检查。

    1. 如果信息包的 FO > 0,信息包允许。

    2. 如果信息包 的FO = 0,下ACL条目被处理。

拒绝ACL线路带有L3仅信息 ,并且片段关键字存在

  1. 如果信息包的L3信息在ACL线路匹配L3 信息,信息包碎片偏移被检 查。

    1. 如果信息包的FO > 0,信息包被 丢弃。

    2. 如果信息包的FO = 0,下条 ACL线路被处理。

允许ACL线路带有L3和L4信息

  1. 如果信息包的L3和L4信息匹配ACL线 路和FO = 0,信息包允许。

  2. 如果信息 包的L3信息匹配ACL线路和FO > 0,信息包允许。

拒绝ACL线路带有L3和L4信 息

  1. 如果信息包的L3和 L4信息匹配ACL条目和FO = 0,信息包被丢弃。

  2. 如果信息包的L3信息匹配ACL线路和FO > 0,下ACL 条目被处理。

ACL规则流程图

当不分片、初始分段和非初始片段被检查ACL时,以 下流程图说明ACL规则。

注意: 非初始片段包含仅第三层,从未第四层信息, 虽然ACL可能包含第三层和第四层信息。

 acl_wp_flow.gif

[page]
信息包如何能匹配 ACL
示例 1
以下五个可能的情况介 入遇到ACL 100的不同种类的信息包。参见表和流程图您跟随 什么在每个情况发生。网络服务器的IP地址是171.16.23.1。

 access-list 100 permit tcp any host 171.16.23.1 eq 80
 access-list 100 deny ip any any
 
信息包是为 服务器或不分片注定的初始分段在端口80:
ACL的第一条线路包含第 三层和第四层信息,在信息包匹配第三层和第四层信息,因此信息 包允许。

信 息包是为服务器或不分片注定的初始分段在端口21:
ACL的第一条线路包含第 三层和第四层信息,但第四层信息在ACL不匹配信息包,因此下条 ACL线路被处理。

ACL的第二条线路丢 弃所有信息包,因此信息包被丢弃。

信息包是非初始片段到服务 器在端口80流:
ACL的第 一条线路包含第三层和第四层信息,第三层信息在ACL匹配信息包, 并且ACL 活动是允许,因此信息包允许。

信息包是非初始片段到服务 器在端口21流:
ACL的 第一条线路包含第三层和第四层信息。第三层信息在ACL匹配 信息包,没有第四层信息在信息包,并且ACL活动是允许,因此信息 包允许。

信息包是初始分段、不分片或者非初始片段到另一台主机在服务器 子网:
ACL的第一条 线路包含在信息包的第三层信息(目的地地址)不匹配第三层信息, 因此下条ACL线路被处理。

ACL的第 二条线路丢弃所有信息包,因此信息包被丢弃。

示例 2
下列同样五个可能的 情况介入遇到ACL 101的不同种类的信息包。再次,参见表 和流程图您跟随什么在每个情况发生。网络服务器的IP地址 是171.16.23.1。

 access-list 101 deny ip any host 171.16.23.1 fragments
 access-list 101 permit tcp any host 171.16.23.1 eq 80
 access-list 101 deny ip any any
 
信息包是为服务器或不分片注定的初始分段在端口 80:
ACL的第一条线路 包含在信息包匹配第三层信息的第三层信息。ACL活动是拒绝 ,但因为 片段 关键字存 在,下ACL条目被处理。

ACL的第二 条线路包含第三层和第四层信息,匹配信息包,因此信息包允许。

信息包 是为服务器或不分片注定的初始分段在端口21:
ACL的第一条线路包含 第三层信息,匹配信息包,但ACL条目也有 片 段 关键字,不匹配信息包因为FO = 0 ,因 此下ACL条目被处理。

ACL的第二条 线路包含第三层和第四层信息。在这种情况下,第四层信息 不配比,因此下ACL条目被处理。

ACL的第三条线路丢弃所有信息包,因此信息包被丢 弃

信息包 是非初始片段到服务器在端口80流:
ACL的第一条线路包含在信息包匹配第三层信息的第 三层信息。切记即使这是端口80流的一部分,没有第四层信 息在非初始片段。因为第三层信息配比,信息包被丢弃。

信息包是 非初始片段到服务器在端口21流:
ACL的第一条线路包含仅第三层信息,并且匹配信息包,因此信息包被丢弃。

信息包是初始分段、不分片或者非初始片段到另一 台主机在服务器子网:
ACL的第一条线路包含仅第三层信息,并且不匹配信 息包,因此下条ACL线路被处理。

ACL的第二条线路包含第三层和第四层信息。第四层信息在信息包不匹配那ACL,因此下条ACL线路被处理。

ACL的第三条线路丢弃此信息包

[page]
分段关键字情形

方案1

路由器B接通到网络服务器,并且网络管理员不想要 允许任何片段到达服务器。 此方案显示发生了什么如果网络 管理员实现ACL 100与ACL 101。ACL是应用Inbound在路由器 Serial0 (s0)接口并且应该允许仅不可成片断的信息包到达网络服 务器。参见 ACL规则流程图信息包如何能匹配 ACL部分当您跟随方案。

使用片段关键字的后果
acl_wp-01.gif
下列是 ACL 100:

 access-list 100 permit tcp any host 171.16.23.1 eq 80
 access-list 100 deny ip any any
 
ACL 100的第一条线路允 许仅HTTP对服务器,但在服务器也允许非初始片段对所有TCP端口。 它允许这些信息包因为非初始片段不包含第四层信息,并且 ACL逻辑假设那如果第三层信息匹配,然后第四层信息也配比,如果 是可用的。第二条线路是含蓄的并且否决其他数据流。

请注意,自Cisco IOS软件版本 12.1(2)和12.0(11),新的ACL代码投下在ACL不匹配其他线路的片段 。如果他们不匹配ACL的其他线路,更早版本通过允许非初始 片段。

下列是ACL 101:

 access-list 101 deny ip any host 171.16.23.1 fragments
 access-list 101 permit tcp any host 171.16.23.1 eq 80
 access-list 101 deny ip any any
 
ACL 101通过不允许非初始片段对服 务器由于第一条线路。一个非初始片段到服务器被拒绝当遇 到第一条ACL线路时因为第三层信息在信息包在ACL线路匹配第三层 信息。

首字母或不分片对端口80在 服务器也匹配ACL的第一条线路对于第三层信息,但因为片段关键字 存在,下ACL条目(第二条线路) 被处理。因为他们匹配ACL 线路为第三层和第四层信息,ACL的第二条线路允许首字母或不分片 。

非初始片段被注定对其他主机TCP 端口在171.16.23.0网络由此ACL阻拦。第三层信息在这些信 息包在第一条ACL线路不匹配第三层信息,因此下条ACL线路被处理 。第三层信息在这些信息包在第二条ACL线路不匹配第三层信 息二者之一,因此第三条ACL线路被处理。第三条线路是含蓄 的并且否决所有数据流。

因为允许 仅不可成片断的HTTP流到服务器,网络管理员在此方案决定实现 ACL 101 。

--------------------------------------------------------
方案2
用户有互联网连通性在二个不同的站点,并且也有二 个站点的之间背后连接。 网络管理员的制度是允许组A在站 点1访问HTTP服务器在站点2。路由器在两个站点使用专用地 址(RFC 1918  )和网 络地址转换(NAT)转换通过互联网路由的信息包。

网 络管理员在站点1是制度路由专用地址分配到组A,因此他们使用背 后通过路由器A Serial0 (s0)当访问HTTP服务器在站点2时。 路由器在站点2有静态路由到172.16.10.0,因此回程数据流 对组A通过背后也被路由。 其他数据流由NAT处理并且通过互 联网被路由。网络管理员在此方案必须决定哪应用程序或流 工作如果信息包分段。因为你或其他中断,同时做HTTP和文 件传输协议(FTP)流水作业是不可能的。

参见 ACL规则流程图 和 信息包如何能匹 配 ACL部分当您跟随方案。

网络管理员的选项的解释
在以下示例,称为 FOO的路由映射在路由器A发送匹配ACL 100到路由器B至s0的信息包 。不配比的所有信息包由NAT处理和采取默认路由通过互联网 。

注意: 如果 信息包跌下ACL 的底部或者由它拒绝,则不策略路由。
acl_wp-02.gif

下列是 部分路由器配置A,表示,制度路由映射告诉的FOO被应用于接口e0 ,数据流从组A其中输入路由器:

 hostname Router_A
 int e0
 ip policy route-map FOO
 route-map FOO permit 10
 match ip address 100
 set ip next-hop 10.1.1.2
 access-list 100 permit tcp 172.16.10.0 0.0.0.255 host 192.168.10.1 eq 80
 access-list 100 deny ip any any
 
ACL 100在两提供策略路由首字母,不分片并且HTTP 的非初始片段流到服务器。 因为他们在第一条ACL线路,匹 配第三层和第四层信息HTTP流的首字母和不分片到由ACL和制度允许 路由的服务器。因为第三层信息在信息包也匹配第一条ACL线 路,由ACL和制度允许路由的非初始片段; ACL逻辑假设,第 四层信息在信息包也配比如果是可用的。

注意: 因为最初和非初始片段 达到对服务器通过不同的路径,ACL 100 中断分段的TCP流的其他 类型在组A和服务器之间; 初始分段由NAT处理并且通过互联 网路由,但同一流的非初始片段是路由的制度。

分段的FTP流帮助在此方案说明问题。FTP流 匹配的初始分段第三层信息,但不是第四层信息,第一条ACL线路和 他们由第二条线路随后拒绝。这些信息包由NAT处理并且通过 互联网路由。

FTP流匹配的非初始 片段第三层信息在第一条ACL线路和ACL逻辑在第四层信息假设正匹 配。是制度路由的这些信息包,并且重新组装这些信息包的 主机不认可初始分段作为流一部分和策略路由非初始片段一样因为 NAT更改了初始分段的源地址。

ACL 100在如下配置解决FTP问题。ACL 100第 一条线路拒绝最初和非最初的FTP片段从组A对服务器。

 hostname Router_A
 int e0
 ip policy route-map FOO
 route-map FOO permit 10
 match ip address 100
 set ip next-hop 10.1.1.2
 access-list 100 deny tcp 172.16.10.0 0.0.0.255 host 192.168.10.1 fragments
 access-list 100 permit tcp 172.16.10.0 0.0.0.255 host 192.168.10.1 eq 80
 access-list 100 deny ip any any
 
初始分段在第一条ACL线路在第三层 信息,但片段关键字原因的 出 现 配比将被处理的下条ACL线路。初始 分段不匹配第二条ACL线路对于第四层信息,和因此ACL的下条含蓄 线路被处理,丢弃信息包。非初始片段在ACL 的第一条线路 匹配第三层信息,因此他们被拒绝。标注姓名起首字母并且 非初始片段由NAT处理并且通过互联网路由,因此服务器没有问题重 新组装。

修理FTP流中断分段HTTP流 因为现在是制度路由的最初的HTTP段,但非初始片段由NAT处理并且 通过互联网路由。

当HTTP流的一个 初始分段从组A到服务器遇到ACL的第一条线路时,在ACL在第三层信 息配比,但由于 片段 关 键字,ACL的下条线路被处理。 ACL的第二条线路允许并且制 度路由信息包到服务器。

当从组注 定了的非最初的HTTP段A到服务器遇到ACL的第一条线路,第三层信 息在信息包匹配ACL线路并且信息包被丢弃。 这些信息包由 NAT处理并且横断互联网达到对服务器。

第一个ACL在此方案允许分段的HTTP流并且中断分段 的FTP流。第二个ACL允许分段的FTP流并且中断分段的HTTP流 。因为最初和非初始片段采取不同的路径对服务器,TCP流在 每个案件中断。因为NAT更改了非初始片段的,源地址重新组 装不是可能的。

修建允许流他想要 工作。的两分段的流到服务器的ACL是不可能的,因此网络管理员必须选择。 

相关新闻
无相关正文