




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、CBAC技术介绍 CBAC是一种允许路由器审查经过自己的流量,并且根据已经建立起来的状态信息决定允许某些流量或者拒绝某些流量通过的机制。CBAC动态修改扩展的访问控制列表以允许从外部发起的返回流量,CBAC提供对应用层和传输层协议的检查,同时基于检查数据包收集到的信息来控制会话的数量,同时也生成警告和审计信息。 和ACL不同的是,普通的扩展ACL只能在第3,4层对流量进行过滤,RACL(自反射列表)能过滤第5层会话层的信息,CBAC支持应用服务的审查,能检查某些数据包的内容,如TELNET数据包内输入的命令;也能检查连接消息,确定连接的状态,CBAC能检查控制连接,确定数据连接正在建立,并将该连接添加到状态表中。CBAC也支持多个多媒体协议,以及其他的执行这种功能的应用。同样,CBAC也可以对HTTP做检查,发现JAVA程序,并进行过滤。 CBAC做为IOS的状态防火墙的工作如下: 为需要进行审查的协议维持传输和应用状态。每一个连接都会创建一个连接状态,对于TCP协议而言,TCP的连接初始化序列号用来创建TCP的连接状态。对于UDP协议来说,只要CBAC审查到UDP数据包有特殊的地址和端口组合就创建一个连接状态。当TCP和UDP携带我们想要进行审查的应用服务时,CBAC就会针对应用服务的端口号来对有效负载进行审查。 当连接终止时,同时删除连接状态。 携带有无效的TCP序列号的TCP数据包会被主动的丢弃。 CBAC不支持IP分组重组装,CBAC允许非初始分片通过CBAC状态防火墙,同时维持分片的互连状态并校验分片以防止分片攻击的发生。 CBAC对由路由器本身产生的数据包不做审查。 二、CBAC工作流程 1.一个用户发起一个到外部网络的访问连接,如HTTP。如果在路由器的内部接口上设置的入方向的ACL。那么在CBAC审查之前,首先需要ACL对此流量进行审查,只有不被ACL拒绝的流量才会进入到CBAC审查的步骤。而CBAC不一定对所有的流量进行审查,如果流量不需要进行转发,则路由器直接转发该流量。例中用户发起的HTTP需要进行审查,则进行下一个步骤。 2.IOS防火墙将该连接和状态表中的条目做比较:如果说状态表中没有该连接的条目,则创建一个条目,并重置连接的空闲计数器。 3.如果是一个新的条目,则Cisco IOS在外部接口的入方向上动态的添加一条访问控制列表条目,以允许该流量返回。 4.在较新的IOS版本上,已不会在外部接口的入方向上添加本条ACL条目,而是通过查看状态表来决定该流量是否允许进入。该特性成为FAB(Firewall ACL Bypass,FAB),且不能被关闭,此特性会使流量可以通过CEF进行快速交换从而提高路由器的性能。 5.如果状态表中不存在流量的条目,则进入IOS路由器的流量通过外部接口的ACL来实施策略。 三、CBAC针对无状态化过滤的增强 与无状态过滤的机时RACL(自反列表)相比较,CBAC具有以下的增强: 1.TCP 对于TCP来说,CBAC审查该连接并检查TCP报文中的控制位。如果CBAC看到TCP报文中的FIN标识,CBAC在外部接口的ACL上动态地删除生成的访问控制列表条目(较老的版本中),然后在状态表中删除有关该连接的条目。同时TCP连接空闲超过一定的时间后,CBAC也会对该连接进行删除。针对于TCP连接的建立时,当CBAC看到TCP报文中的SYN标识后的一段时间内,连接还没有建立的话,IOS同样会在ACL和状态表中删除有关该连接的条目。 2.UDP 对于UDP而言,由于UDP是无连接的,CBAC无法像处理TCP数据一样处理UDP数据。CBAC会自行估计一个UDP连接的生命周期(默认是30秒),如果空闲时间超过这个生命周期值,CBAC会认为该连接已经结束,并删除状态表条目和访问控制列表条目(较老的版本中)。CBAC还可以审查DNS请求和回复消息,生命周期为5秒。 3.ICMP 针对ICMP流量做审查时,CBAC能针对ICMP的请求、应答、不可达、超时、时间戳请求和时间戳应答消息进行审查。和UDP连接一样,CBAC也会为ICMP流量提供一个生命周期,超过该周期后就删除状态表条目和访问控制列表条目(较老的版本中)。 4.多连接的应用 FTP和多媒体应用等协议,是通过打开附加连接来进行数据的传输。CBAC为这些应用审查控制连接的同时,也能确定数据连接和其他连接是否正在被打开。当CBAC发现这些附加的连接时,会将连接的信息自动添加到状态表中,并在ACL内动态的添加条目以允许返回流量的进入(较老的版本中)。 5.内嵌的地址信息 对于CBAC支持的应用,CBAC也能审查这些连接,查看数据流量中是否有被嵌入的地址信息,如IP地址或端口号,并通过Cisco IOS在地址转换表中的转换条目来对这些地址信息做动态地修改。但是要注意的是,针对某些应用而言,CBAC只支持NAT,而不支持PAT。 6.应用层的审查 CBAC支持应用层信息得审查,从而限制设备间基于应用服务的交互。 7.DoS探测 CBAC能探测某些类型的DoS泛洪攻击。当DoS攻击发生时,Cisco IOS使用阻塞而已的数据包,生成警告信息,关闭伪造的连接等手段保护路由器。 CBAC使用超时值和阈值来审查TCP连接的建立,CBAC会设置一个特定的计数器,在这个计数器计时结束的时候,TCP的连接建立还没有完成的话,Cisco IOS将从状态表中删除连接的信息,并发出TCP RST消息通知源地址和目的地址。这个措施被用来释放半开连接,保护路由器不会因为过多的连接而过载。CBAC可以建立3种阈值: TCP半开连接和UDP未完成的会话总数。 一段时间内TCP半开连接和UDP未完成的会话数。每台主机TCP半开连接和UDP未完成的会话数。l 四、CBAC的附加特性 1.JAVA内容的过滤 在访问HTTP数据时,HTTP数据经常会携带JAVA的小程序,JAVA的小程序有可能会被恶意的利用。针对这些流量,CBAC也提供了过滤JAVA程序的手段。而需要注意的是,如果JAVA程序被压缩、加密或者是承载JAVA程序的HTTP流量在CBAC中没有定义的话,CBAC不能对JAVA程序进行过滤。 配置JAVA过滤的步骤如下: 步骤 1 定义标准访问控制列表来匹配需要进行JAVA过滤的流量: hostname(config)#access-list acl_# permit | deny ip_add 步骤 2 对携带JAVA小程序的HTTP流量进行审查 hostname(config)#ip inspect name inspect_name http java-list acl_# alert on | off audit-trail on | off timeout seconds 2.针对协议审查的端口映射 CBAC使用端口映射来确定一个连接上应该执行审查的类型。端口映射(PAM)被用来重新映射端口或者关联其他非标准协议的端口到特定的应用服务,以便使CBAC可以进行审查过程。例如,默认情况下,使用TCP协议端口号为21的流量,CBAC认为这是FTP的应用,CBAC将针对FTP的审查应用在这个流量上。但是,某些情况下,我们会更改应用服务的端口号,比如说将HTTP服务的端口号改为21,这个时候CBAC就不能对这个流量做出正确的判断并执行审查,此时我们应该配置PAM来通知CBAC,应当对TCP端口21的应用进行HTTP服务的审查。另外,其他的非标准的端口,CBAC也不会进行审查,我们也需要通过PAM将这些非标准的端口指定为特定的服务,以提供给CBAC进行审查。 PAM的映射关系被存放在PAM表中,这张表中包含三种类型的条目: 系统定义的条目:这些条目建立了应用服务和标准端口的映射关系。 用户定义的条目:这些条目建立了对应用服务和非标准端口的映射关系。也能应用一个范围到一个特定的应用。 特定的主机条目:这些条目建立了某些主机所对应的应用服务和非标准端口的映射关系。 PAM的配置方法如下: hostname(config)#ip port-map application_name port port_# list acl_# 我们可以通过show ip port-map命令来查看映射关系: 五CBAC配置实例 在这里举一个简单的例子来说明CBAC的配置方法:图1 CBAC配置实例 如图1所示:边界路由器的两边分别连接了内部网络和外部网络,外部网络上有一台TELNET服务器和WWW服务器,TELNET所使用的端口是2323,在边界路由器的外部接口的入方向上配置了拒绝所有外部流量进入的访问控制列表来保护内部网络的主机不受外部网络攻击的侵害;内部网络有一台终端PC,IP地址是00,需要对外部的Telnet服务器进行www访问和telnet登陆。需要保证终端PC可以正常的访问Telnet服务器,且不允许在外部的访问控制列表上添加任何ACE条目。命令(1)匹配源地址段是/24的流量,访问控制列表的编号是1命令(2)匹配主机源地址是的流量,访问控制列表的编号是23命令(3)建立外部的访问控制列表,拒绝所有流量进入内部网络命令(4)建立对从内部到外部HTTP流量的审查,并且针对除了匹配访问控制列表1的流量进行JAVA内容过滤命令(5)建立名称为CBAC的针对ICMP协议流量做审查的CBAC策略命令(6)建立名称为CBAC的针对TCP协议流量做审查的CBAC策略命令(7)说明将匹配访问控制列表23流量的TCP2323数据作为telnet流量进行审查我们在终端PC上进行ping操作和登陆该TELNET服务器后,查看路由器针对两种流量动态生成的访问控制列表与流量进程信息: 由以上的信息,我们会发现,CBAC为我们的流量在外部接口的in方向上动态的生成了ACL条目允许返回流量的进入,并且针对从内部发起的流量生成了状态信息。 在本例中我们使用的IOS版本较老,在较新的IOS版本中以不在生成ACL,而通过状态信息来检查是否允许流量进入。以下来自baidu概要 基于上下文的访问控制协议(CBAC)通过检查通过防火墙的流量来发现管理TCP和UDP的会话状态信息。这些状态信息被用来在防火墙访问列表创建临时通道。通过在流量向上配置ipinspect列表,允许为受允许会话放回流量和附加数据连接,打开这些通路。受允许会话是指来源于收保护的内部网络会话。 编辑本段工作原理 CBAC制定了那些协议及接口。接口方向(流入和流出)需要检查,同指定了检查的起始。CBAC只对制定的协议进行检查。对于这些协议,只要数据包经过已配置检查的接口,那么无论它们从那个方向通过防火墙都将被检查。进入防火墙的数据包只会在其第一次通过接口的入站ACL时才会被检察。如果数据包被ACL拒绝,数据包会被简单的丢掉并且不会被CBAC检查。 编辑本段CBAC的配置 在Cisco路由器上创建ACL(访问控制列表)是管理员常用的数据过滤和网络安全防护措施,但是ACL的局限性是非常明显的,因为它只能检测到网络层和传输层的数据信息,而对于封装在IP包中的恶意信息它是无能为力的。因此,ACL并不可靠,需要CBAC(基于上下文的访问控制)的配合,这样网络安全性将会极大提升。 一、CBAC简述 CBAC(context-based access control)即基于上下文的访问控制,它不用于ACL(访问控制列表)并不能用来过滤每一种TCP/IP协议,但它对于运行TCP、UDP应用或某些多媒体应用(如Microsoft的NetShow或Real Audio)的网络来说是一个较好的安全解决方案。除此之外,CBAC在流量过滤、流量检查、警告和审计蛛丝马迹、入侵检测等方面表现卓越。在大多数情况下,我们只需在单个接口的一个方向上配置CBAC,即可实现只允许属于现有会话的数据流进入内部网络。可以说,ACL与CBAC是互补的,它们的组合可实现网络安全的最大化。 二、CBAC的合理配置 1.CBAC配置前的评估 在进行CBAC配置之前需要对网络的安全标准、应用需求等方面进行评估然后根据需要进行相应的配置。通常情况下,用户可以在一个或多个接口的2个方向上配置CBAC。如果防火墙两端的网络都需要受保护的话,如在Extranet或Intranet的配置中,就可以在2个方向上配置CBAC。若防火墙被放置在2个合作伙伴公司网络的中间,则可能想要为某些应用在一个方向上限制数据流,并为其它应用在反方向上限制数据流。 特别要注意的是,CBAC只能用于IP数据流。只有TCP和UDP数据包能被检查,其他IP数据流 (如ICMP)不能被CBAC检查,只能采用基本的访问控制列表对其进行过滤。在不作应用层协议审查时,像自反访问控制列表一样,CBAc可以过滤所有的TCP和UDP会话。但CBAC也可以被配置来有效地处理多信道(多端口)应用层协议:cu-SeeMe(仅对whitePine版本)、FTP、H.323(如NetMeeting和ProShare)、HTTP(Java拦阻)、Java、MicrosftNetshow、UNIX的r系列命令(如rlogin、rexec和rsh);RealAudio、RPC(SunRPc,非DCERPC)MircosoftRPC、SMTP、SQL.Net、StreamWorks、TFTP、VDOLive。 2.选择配置接口 为了恰当地配置CBAc,首先必须确定在哪个接口上配置CBAC。下面描述了内部口和外部接口间的不同之处。 配置数据流过滤的第一步是决定是否在防火墙的一个内部接口或外部接口上配置CBAC。在该环境下,所谓“内部”是指会话必须主动发起以让其数据流被允许通过防火墙的一侧;“外部”是指会话不能主动发起的一侧(从外部发起的会话被禁止)。如果要在2个方向上配置CBAc,应该先在一个方向上使用适当的“Intemal”和“Extemal”接口指示配置CBAC。在另一个方向上配置CBAC时,则将该接口指示换成另一个。 CBAC常被用于2种基本的网络拓扑结构之一。确定哪种拓扑结构与用户自己的最吻合,可以帮助用户决定是否应在一个内部接口或是在一个外部接口上配置CBAC。 图l给出了第1种网络拓扑结构。在该简单的拓扑结构中,CBAC被配置在外部接口S0上。这可以防止指定的协议数据流进入该防火墙路由器和内部网络,除非这些数据是由内部网络所发起会话的一部分。 图1 图2给出了第2种网络拓扑结构。在该拓扑结构中,CBAC被配置在内部接口E0上,允许外部数据流访问DMZ(连接在接口E1上的停火区)中的服务(如DNS服务),同时防止指定的协议数据流如内部网络,除非这些数据流是由内部网络所发起的会话的一部分。这两种拓扑结构之间的关键不同点是:第1种拓扑结构不允许外部数据流不经过CBAC过滤器就进入了路由器;第2中拓扑结构允许外部数据流入路由器,让他们能不经过CBAC过滤器就到达位于DMZ区中的公共服务器。 图2 根据这2个拓扑结构样例,可以决定网络是否应在一个内部接口或是在一个外部接口上配置CBAC。如果防火墙只有2条连接,一条是到内部网络,另外一条是到外部网络,那么只能使用入方向的访问控制列表就可以了,因为数据包在有机会影响路由器之前已经被过滤了。 3.防火墙配置 当用户用Cisco IOS配置任何IP防火墙时可参照下面给出的一些基本的配置指南。 (1).配置一个包含允许来自不受保护网络的某些ICMP数据流条目的访问控制列表。尽管一个拒绝所以不属于受CBAC所审查的连接一部分的IP数据流的访问控制列表看起来比较安全,但它对路由器的正确运行不太现实。路由器期望能够看到来自网络中其他路由器的ICMP数据流。ICMP数据流不能被CBAC所审查,所以应在防护控制列表中设置特定的条目以允许返回的ICMP数据流。如在受保护网络中的一个用户要用“Ping”命令来获取位于不受保护网络中的一台主机的状态,如果在访问控制列表中没有允许“echoreply”消息的条目,则在受保护网络中的这位用户就得不到其“Ping”命令的相应。下面所示的配置中含有允许关键ICMP消息的访问控制列表条目: Router(config)#access -list 101 permit icmp any any echo-reply Router(config)#access -list 101 permit icmp any any time-execeeded Router(config)#access -list 101 permit icmp any any packet-too-big Router(config)#access -list 101 permit icmp any any traceroute Router(config)#access -list 101 permit icmp any any UnreaChable (2).在访问控制列表中添加一个拒绝所有冒用受保护网络中地址的外来数据流的条目。这被称作防欺骗保护,因为它可以防止来自不受保护网络的数据流假冒保护网络中某个设备的身份。 (3).在访问控制列表增加一个拒绝源地址为广播地址(55)数据包的条目。该条目可以防止广播攻击。 (4).当对防火墙的访问特权设置口令时,最好是用“enablesecret”命令而不是“enablepassword”命令。因为“enableesecret”命令使用了一种更强的加密算法。 (5).在控制台端口上设置一个口令,至少应配置“login”和“password”命令。 (6).在以任何方法将控制台连接到网络上(包括在该端口上连接一个调制解调器)之前,应认真考虑访问控制事宜。要知道,在重启防火墙路由器时通过在控制台端口上“break”键就可以获得对它的完全控制权,即使配置了访问控制也无法阻止。 (7).对所有的虚拟终端端口应用访问控制列表和口令保护。用“access -class”命令指定的访问可以通过telnet登录到路由器上。 (8).不要启用用不到的任何本地服务(如SNMP或网络时间协议NTP)。Cisco发现吸引CDP(Cisco Discovery Protocol)和NTP的缺省是打开的,如果不使用的话就应该把它们关闭。 (9).任何被启用的服务都有可能带来潜在的安全风险。一个坚决的、有恶意的团体有可能会摸索出滥用所启用服务的方法来访问防火墙或网络。对于被启用的本地服务,可以通过将它们配置为只与特定的对等体进行通信来防止被滥用,并通过在特定的接口上配置访问控制列表来拒绝对这些服务的访问数据包来保护自己。 (10).关闭低端口服务。对于IP可以输入“noservicetcp-small-servers”和“noserviceudp-small-servers”全局配置命令。在Cisco IOS版本12.0及后续版本中,这些服务缺省就是关闭的。 (11).通过在任何异步telnet端口上配置访问控制列表来防止防火墙被用作中继跳板。 (12).通常情况下,应该在防火墙和所有其他路由器上关闭对任何可应用协议的定向广播功能。对于IP协议,可使用no中“directed -broadcast”命令。在极少数情况下,有些IP网络确实需要定向广播功能,在这种情况下就不能关闭定向广播功能,定向广播可以被滥用来放大拒绝服务攻击的力量,因为每个Dos数据包都会被广播到同一子网的所有主机。另外,有些主机在处理广播时还存在有其他固有的安全风险。 (13).配置“noproxy -arp”命令来防止内部地址被暴露(如果没有配置NAT来防止内部地址被暴露的话,这么做是非常必要的)。 (14).将防火墙防在一个安全的区域内。 三、配置接口的技巧 1.配置外部接口的技巧 如果在外部接口上有一个对外方向的IP访问控制列表,则该访问控制列表就可以是一个标准的或扩展的访问控制列表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2.1细胞中的元素和化合物教学设计教学反思-2023-2024学年高一上学期生物人教版(2019)必修1
- 青马工程考核评价方案(3篇)
- 科学事业费政策性支持、调节费科技工作合同7篇
- 海底捞火锅服务创新与市场竞争分析报告
- 智研咨询发布:2025版云南省肥料行业发展历程、市场概况及未来前景研究报告
- 2025年教师招聘之《小学教师招聘》题库必刷100题及答案详解【名校卷】
- 砌体工程双优化方案(3篇)
- 洞察未来:2025年奢侈品消费市场消费趋势研究报告
- 洞察2025:跨境电商本土化售后服务案例研究报告
- 南岸河道整治工程方案(3篇)
- 全球低空经济2025年技术规范与实施白皮书
- 贵阳市2026届高三年级摸底考试英语试卷(含答案)
- 2025年城市燃气储气罐采购安装与运营维护服务合同范本
- 病房消毒及卫生管理课件
- 2025年国家公务员考录《行测》真题及参考答案
- 2025年人教版新教材数学二年级上册教学计划(含进度表)
- 2025至2030中国灾备市场发展状况及前景趋势研究报告
- (高清版)DZT 0331-2020 地热资源评价方法及估算规程
- 体育教学论-课件
- 医生岗位月度绩效考核表(KPI)
- 人教版数学四年级上册教学计划
评论
0/150
提交评论