已阅读5页,还剩74页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十一章防火墙技术 11 1防火墙概述在互联网的环境中 某个特定网络 专用网络 与其他网络 公共网络 进行数据和信息的交换是互联网存在的目的 但这种信息的交换与共享是要在该网络利益的前提下 特别是在一定的网络安全策略指导下 通过控制和监测网络之间的信息交换和访问行为来实现网络安全的有效管理 使得网络的运行能够健康有序地正常发展 网络安全最开始的技术 也是源于单个主机系统的安全防范模式 即使用访问控制的方法 限制使用者访问系统或网络资源的权限 以达到规范网络行为的目的 于是防火墙技术也就应运而生 并且蓬勃发展起来 11 1 1防火墙的定义一般说来 防火墙并无严格的定义 它是一个或一组实施访问控制策略的系统 它在内部网络 专用网络 与外部网络 公用网络 之间形成一道安全屏障 如图11 1所示 以防止非法用户访问内部网络上的资源和非法向外传递内部信息 同时也防止这类非法和恶意的网络行为导致内部网络的运行遭破坏 在建筑上 防火墙被设计用来防止或是从建筑物的一部分蔓延到内部一部分 网络防火墙防止外部网络的损坏涉及到内部网络 它就像在网络周围挖了一条护城河 在唯一的桥上设立了安全岗哨 进出的行人都要接受检查 由于防火墙的地位和作用是出于网络边界的位置 它可以由硬件 软件或它们的相互结合具体实现 Internet根据规则判断是防火墙否允许分组通过局域网图11 1防火墙的理论概念 防火墙目的就是要通过各种控制手段 保护一个网络不受来自另一网络的攻击 形象地说 防火墙是在两个网络通信时 执行一种访问控制的尺度 它能够允许用户 同意 的人和数据进入他的网络 同时将用户 不同意 的人和数据拒之门外 阻止网络中黑客来访问他的网络 防止他们更改 拷贝 毁坏用户的重要信息 而且所谓的 火 还应该包括内部网络的 人 或数据未经许可访问和进入外部网络 因此 防火墙应该是双向的作用 即是一种将内部网络和外部网络在一定程度上隔离的技术 防火墙的基本思想 不是对每台主机系统进行保护 而是让所有对系统的访问通过某一点 并且保护这一点 并且尽可能的对外界屏蔽被保护网络的信息和结构 防火墙是设置在可信任的内部网络和不可信任的外界之间的一道屏障 它可以实施比较广泛的安全政策来控制信息流 防止不可预料的潜在的入侵破坏 防火墙可以是路由器 也可以使PC 主机系统或者是一批主机系统 专门用于把网点或子网同那些可能被子网外的主机系统滥用的协议和服务隔离 防火墙可以从通信协议的各个层次以及应用中获取 存储管理相关的信息 以便实施系统的访问安全决策控制 从逻辑上来说 防火墙是一个分离器 是一个限制器 是一个分析器 各站点的防火墙的结果是不同的 通常一个防火墙由一套硬件 如一个路由器 或其他设备的组合 一台堡垒主机 和适当的软件组成 组成的方式可以有很多种 这主要取决于站点的安全要求 经费的多少以及其他的综合因素 但是防火墙也不仅仅是路由器 堡垒主机或任何提供网络安全的设备的组合 它是安全策略的一部分 安全策略建立了全方位的防御体系来保护内部网络的信息资源 例如防火墙不再是提供访问控制 如IP包过虑 电路网关和应用网关 的系统 而且初步具备了VPN的某些功能 安全性能和处理速度始终是防火墙设计实现的重点 也是最难处理的一对矛盾 这就导致目前防火墙研制的两个侧重点 一是将防火墙建立在通用的安全操作系统和通用的计算机硬件平台上 利用已有平台提供的丰富功能 使防火墙具备尽可能多的安全服务 二是以提高速度为设计实现目标 利用快速处理器 ASIC和实施高效的操作系统实现防火墙 根据有关测试报告 这类防火墙的实际吞吐率接近线速 11 1 2防火墙的功能与优势现在很多的防火墙都支持对私有数据的加密 以保证通过Internet进行虚拟私人网络和商务活动不受损坏 对于企业本地网络与分支机构 商业伙伴和移动用户间安全通信的附加部分 防火墙还提供客户端认证功能 它只允许指定的用户访问内部网络或选择服务 另外 黑客从外部获取网络访问权的常用手段是欺骗 使数据报号是来自网络内部 对内部网络形成威胁 防火墙的反欺骗技术也是不可缺少的 但从基本要求上看 防火墙还是在两个网络之间执行控制策略的系统 包括硬件和软件 目的是不被非法用户入侵 它遵循的是一种允许或禁止业务来往的网络通信安全机制 也就是提供可控的过滤网络通信 只允许授权的通信 因此 对数据和访问的控制 对网络活动的记录 是防火墙发挥作用的根本和关键 无论何种类型的防火墙 从总体上来看 都应具有以下五大基本功能 过滤进出网络的数据 管理进出网络的访问行为 封堵某些禁止的行为 记录通过防火墙的信息内容和活动 对网络攻击的检测和告警 过滤进 出网络的数据 防火墙是任何信息进出网络的必经之路 它检查所有数据的细节 并根据事先定义好的策略允许或禁止这些数据进行通信 这种强制性的集中实施安全策略的方法 更多的是考虑内部网络的整体安全共性 不为网络中的每一台计算机提供特殊的安全保护 简化了管理 提高了效率 管理进 出网络的访问行为 网络数据的传输是通过不同的网络访问服务而获取的 只要对这些网络访问服务加以限制 包括禁止存在安全脆弱性的服务进出网络 也能够达到安全目的 即通过将动态的 应用层的过滤能力和认证相结合 实现WWW HTTP FTP和Telnet等广泛的服务支持 记录通过防火墙的信息内容和活动 对一个网络内部已经连接到外部网络上的机构来说 重要的问题不是网络是否受到攻击 而是何时会受到攻击 网络管理员必须审计并记录所有通过防火墙的重要信息 如果网络管理员不能及时响应报警并审查常规记录 防火墙就形同虚设 在这种情况下 网络管理员永远不会知道防火墙是否受到攻击 对网络攻击检测和告警 封堵某些禁止的业务 传统的内部网络系统与外界相连后 往往把自己完全暴露在一些本身并不安全的服务下 比如NFS和NIS 它们成为外界主机侦察和攻击的主要目标 因此 内部网络的安全就完全依赖于各个主机 而且要求各个主机有相同的安全度 就像单位没有设置传达室和门卫一样 任何人度可长驱直入得到各房间中去 特别是单位规模较大 更难以保证每个房间有较高的安全度 况且随着失误变得越来越普遍 很多 入侵 是由于配置或密码错误造成的 而不是故意和复杂的攻击 而防火墙的作用就是提高主机整体的安全性 概略地说只要包括有 1 控制不安全的服务防火墙可以控制不安全的服务 因为只有授权的协议和服务才能通过防火墙 这就大大的降低了内部网络的暴露度 提高了网络的安全度 从而使内部网络免遭来自于外界的基于某协议或服务的攻击 防火墙还能防止基于路由的攻击策略 拒绝这种攻击试探并将情况通知系统管理员 2 站点访问控制防火墙还提供了对站点的访问控制 比如 从外界可以访问某些主机 却不能非法地访问另一些主机 即在网络的边界上形成一道关卡 一般而言 一个站点应该对进来的外部访问有所选择 至于邮件服务和信息服务肯定是要开放的 如果一个用户很少提供网络服务 或几乎不跟别的站点打交道 防火墙就是它保护自己的最好选择 3 集中安全保护如果一个内部网络中大部分需要维护的软件 尤其是安全软件能集中放在防火墙系统上 而不是分散到每个主机中 会使整体安全保护相对集中 也相对便宜 简化网络的安全管理 提高网络的整体安全性 4 网络连接的日志记录及使用统计通过防火墙可以很方便的监视网络的安全性 并产生报警信号 当防火墙系统被配置为所有内部网络与外部Internet连接均需经过的安全系统时 防火墙就能过对所有的访问作出日志记录 日志是对一些可能的攻击进行分析和防范的十分重要的情报 可以使网络资源得到更好的使用 11 1 3防火墙的发展若以产品为对象 防火墙技术的发展可以分为四个阶段 第一阶段 基于路由器的防火墙由于多数路由器本身就包含有分组过滤功能 故网络访问控制功能可通过路由控制来实现 从而使具有分组过滤功能的路由器称为第一代防火墙产品 第一代防火墙产品的特点是 利用路由器本身的对分组的解析 以访问控制表方式实现对分组的过滤 过滤判决的依据可以是 地址 端口号 ICMP报文类型等 只有分组过滤的功能 且防火墙与路由器是一体的 对安全要求低的网络采用路由器附带防火墙的功能的方法 对安全性要求较高的网络则可单独利用一台路由器组防火墙 第一代防火墙产品的不足之处在于 路由协议十分灵活 本身具有安全漏洞 外部网络要探询内部网络十分容易 例如 在使用FTP协议时 外部服务器容易从20号端口上与内部网相连 即使在路由器设置了过滤规则 内部网络的20端口仍可由外部探寻 路由器上的分组过滤规则的设置和配置存在安全隐患 对路由器中过滤规则的设置和配置十分复杂 它涉及到规则的逻辑一致性 作用端口的有效性和规则集的正确性 一般的网络系统管理员难以胜任 加之一旦出现新的协议 管理员就得加上更多的规则去限制 这往往会带来很多错误 路由器防火墙的最大隐患是 攻击者可以 假冒 地址 由于信息在网络上是以明文传送的 黑客可以在网络上伪造假的路由信息欺骗防火墙 路由器防火墙的本质性缺陷是 由于路由器的主要功能是为网络访问提供动态的 灵活的路由 而防火墙则要对访问行为实施静态的 固定的控制 这是一对难以调和的矛盾 防火墙的规则设置会大大降低路由器的性能 第二阶段 用户化的防火墙工具套为了弥补路由器防火墙的不足 很多大型用户纷纷要求以专门开发的防火墙系统来保护自己的网络 从而推动了用户化的防火墙工具套的出现 作为第二代防火墙产品 用户化的防火墙工具套具有以下的特征 将过滤功能从路由器中独立出来 并加上审计和告警功能 针对用户需求 提供模块化的软件包 软件可通过网络发送 用户可自己动手构造防火墙 与第一代防火墙相比 安全性提高了 价格降低了 由于是纯软件产品 第二代防火墙产品无论在实现还是维护上都对系统管理员提出了相当复杂的要求 并带来以下问题 配置和维护过程复杂 费时 对用户的技术要求高 全软件实现 安全性和处理速度均有局限 实践表明 使用中出现差错的情况很多 第三阶段 建立在通用操作系统上的防火墙它具有以下特点 是批量上市的防火墙专用产品 包括分组过滤或者借用路由器的分组过滤功能 装有专用的代理系统 监控所有协议的数据和指令 保护用户编程空间和用户可配置内核参数的设置 安全性和速度大为提高 第三代防火墙既有以纯软件实现的 也有以硬件方式实现的 随着安全需求的变化和使用时间的推延 仍表现出不少问题 比如 作为基础的操作系统及其内核往往不为防火墙管理者所知 由于原码的保密 其安全性无从保证 由于大多数防火墙厂商并非通用操作系统的厂商 通用操作系统的厂商不会对操作系统的安全性负责 从本质上看 第三代防火墙既要防止来自外部网络的攻击 还要防止来自操作系统厂商的攻击 用户必须依赖两方面的安全支持 一是防火墙厂商 二是操作系统厂商 第四阶段 具有安全操作系统的防火墙防火墙技术和产品随着网络攻击和安全防护手段的发展而演进 到1997年初 具有安全操作系统的防火墙产品面市 使防火墙产品步入了第四个发展阶段 具有安全操作系统的防火墙本身就是一个操作系统 因而在安全性上较之第三代防火墙有质量上的提高 获得安全操作系统的办法有两种 一种是通过许可证方式获得操作系统的源码 另一种是通过固化操作系统内核来提高可靠性 防火墙具有以下特点 防火墙厂商具有操作系统的源代码 并可实现安全内核 对安全内核实现加固处理 即去掉不必要的系统特性 加上内核特性 强化安全保护 对每个服务器 子系统都作了安全处理 一旦黑客攻破了一个服务器 它将会被隔离在此服务器内 不会对网络的其他部分构成威胁 在功能上包括了分组过滤 应用网关 电路级网关 且具有加密与鉴别功能 透明性好 易于使用 11 2防火墙的分类防火墙的分类并不统一 常见的有两种分法 一种是将其分成三类 包过滤路由器 应用层网关 电路层网关 另外一种方法分为两类 网络层防火墙 应用层防火墙 这是因为包过滤路由器工作在网络层 而且名字容易使人误解 所以许多人把包过滤路由器归为网络层防火墙 而应用层防火墙对应第一种分法里的应用层网关和电路层网关 这是因为电路层网关也是工作在应用层 而决不要从它的名字以为它工作在电路层 需要说明的是 两种分类方法都有一定的道理 而且随着防火墙技术的发展 多种技术渐渐结合起来 使得分类的界限也更模糊 例如一些先进的商业防火墙产品往往既工作在网络层 也工作在应用层 因此很难准确地说它属于哪一类 1 包过滤路由器1 包过滤所谓包过滤 通常是路由器的一种功能 根据提供给IP转发过程的包头信息对每个数据包作出允许或拒绝的决定 不要片面的把包过滤路由器理解为就是内置包过滤功能的路由器 许多操作系统中的路由模块也能够实现包过滤功能 因此也属于这一类 包过滤路由器审查每一个到达的数据包 根据IP转发过程中的源地址 目的地址 内装协议 TCP UDP ICMP或IPTunnel TCP UDP目标端口号 ICMP的消息类型等字段查看它们是否匹配某一条过滤规则 然后根据所配备的规则是允许还是拒绝来决定转发或丢弃该数据包 如图11 2所示 2 过滤类型包过滤路由器一般有两种过滤方式 与服务相关的过滤和与服务无关的过滤 a 与服务相关的过滤根据特定的服务允许或拒绝流动的数据 因为大多数服务器都是在特定的TCP UDP端口上监听 如Telnet的端口号为23 FTP的端口号为21 SMTP的端口号为25 HTTP的端口号为80 Internet 包过滤路由器 内部安全子网 图11 2包过滤防火墙 b 与服务无关的过滤有几种类型的攻击与服务无关 无法使用基本的包头信息来识别 只有通过审查路由表和特定的IP选项 检查特定字段的内容 才能发现 下面将列举几个服务无关型攻击的例子 源地址欺骗攻击入侵者从外部传来一个假装是来自内部主机的数据包 希望能渗透到使用了源地址安全功能的系统中 对付这种攻击的方法是让路由器丢弃任何来自外部端口的使用了内部IP地址的数据包 源路由攻击利用源站点指定数据包在网络中所走的路线 使数据包循着一条不安全的路径到达目的站点 对付这种攻击的方法是让路由器丢弃任何有源路由选项的数据包 极小数据段攻击该攻击利用了IP分段的特性 创建极小的分段并强行将TCP头切分在多个数据包段 希望包过滤路由器只检查第一个分段而让其余分段通过 从而绕过用户定义的过滤规则 对付这种攻击通常有两种防治方法 直接防治和间接防治 直接防治 即在过滤程序中设置TMIN TCP报文的最小长度 使TCP报文头部中的 关键信息 均能包含在IP分段报文中 然后再进行过滤 如果FO 0的IP分段长度小于TMIN 过滤程序将自动丢弃第一段报文 实际上相当于丢弃了整个报文 由于UDP ICMP等其他高层协议的关键信息必然包含在68个字节中 所以不会受到此类攻击 间接防治 如果FO 0的报文碎片中关键信息不完整 则继续读入FO 1的分段TCP类报文 3 包过滤路由器的优 缺点包过滤路由器的优点 标准的路由软件中都内置了包过滤功能 因此无需额外费用 另外对于用户和应用透明 用户无须改变使用习惯 包过滤路由器的缺点 定义包过滤规则比较复杂 要求网络管理员对INTERNET服务有深入了解 包过滤路由器允许内部网络和外部网络之间直接建立连接 无法抵御数据驱动型攻击 包过滤规则数目增加会消耗路由器的内存和CPU的资源 使路由器的吞吐量下降 包过滤路由器能够接受或拒绝特定的服务 但是不能理解特定服务的上下文环境和数据 应用层网关防火墙应用层网关防火墙能够实现比包过滤路由器更严格的安全策略 它主要在网关上安装代理软件 PROXY 来实现 1 代理服务器所谓代理实际是一种有特殊功能的应用层代码 它接收客户端的请求 代表客户与目的服务器交谈 并将目的服务器的响应传给客户端 每个代理模块分别针对不同的应用 如Telnet代理负责Telnet在防火墙上的转发 HTTP代理负责HTTP协议 FTP代理负责FTP协议等 可以根据自己的需要安装相应的代理 一般情况下每个代理相互无关 即使某个代理工作发生问题 只需将它简单的卸出 不会影响其它的代理模块 也保证了防火墙失效后的安全 代理的工作原理比较简单 首先是用户与代理服务器建立连接 然后将目的站点告知代理 对于合法的请求 代理以自己的身份 应用层网关 与目的站点建立连接 然后代理在这两个连接中转发数据 如图11 3所示 代理具有隐藏内部IP地址 也就隐藏了内部网络结构 的作用 这是由于外部无法看到服务真正的客户端的IP地址 只能看到应用层网关 因此无法得到内部的网络结构 注意目的站点的地址是通过应用层的协议告诉网关的 FTP客户与代理代理代理服务器的连接的连接内部网络客户Telnet外部网络服务器代理应用层网关图11 3应用层网关防火墙 2 堡垒主机应用层网关常常被称作 堡垒主机 BastionHost 所谓堡垒主机 是一个高度安全的计算机系统 通常因为它暴露于Internet之上 作为联结内部网络用户和外部网络的桥梁 因此易受到攻击 堡垒主机必须采取一些专门的安全措施 能够抵御各种攻击 它主要有以下特点 在应用层网关的硬件之上运行一个安全的操作系统 避免了一般的操作系统的脆弱性 卸掉一切多余的服务 只安装代理模块 用户认证模块等防火墙必需的服务 一般尽量不开多余帐号 也不允许远程登录到堡垒主机 管理员可以根据机构所需要的服务在应用层网关上安装相应的代理模块 除了基本的代理模块外 应用层网关还维护自己的用户库和对象库 用户库保存了用户名 用户组 用户的认证方式 用户的管理级别等信息 对象库保存了管理员定义的网络对象 组对象以及网关等 应用层网关另外一个重要特征是身份认证 它常采取客户服务器方式 对同一用户的身份认证可以根据他所在网络的安全级别采取不同的认证方式 管理员通过配置访问控制表中的访问规则 rulebase 决定内部网络 外部网络的那些用户可以使用应用层网关上的那个代理模块连接到那个目的站点 3 应用层网关的优 缺点应用层网关的优点 能够针对各种应用进行全面控制 这是因为它工作在应用层 能够理解各种应用协议如FTP HTTP 相对于包过滤路由器 更容易配置和测试 支持更全面的访问控制 能够实现更复杂的安全策略 可以较方便的实现代理对客户端的身份认证 可以提供详细的审计功能和全面的日志分析工具 应用层网关的缺点 应用层网关的最大缺点是非透明性 可能要求用户改变自己的使用习惯 一般要对用户进行简单的培训 有些应用层防火墙可以做到透明代理 但往往需要修改应用程序的客户端软件 这还会引出其它一些安全问题 实现起来也很复杂 3 电路层防火墙电路层网关是一个特殊构件 它可以由应用层网关来实现 电路层网关只简单中继TCP连接 并不进行附加的包处理和过滤 如图11 4所示 图11 4充分说明了应用通过电路层网关的操作 电路层网关只是简单中继该应用的连接 并不作任何审查 过滤工作 它就象电线一样 只是在内部连接和外部连接之间来回拷贝数据 但从外部看连接似乎源于防火墙 隐藏了受保护子网的信息 电路层网关有以下特点 1 通用性它对具体的协议内容并不关心 具有 协议无关性 由于它可以为所有TCP和UDP报文提供代理和中继 因此可以为所有应用协议提供服务 2 透明性电路层网关对用户几乎是透明的 用户不需要改变使用习惯 也感觉不到它的存在 不过客户端的操作系统可能需要使用支持电路层网关的动态链接库 3 方便性电路层网关常用于向外连接 这时网络管理员对其内部用户是信任的 它的优点是堡垒主机可以被设置成混合网关 对于进入的连接使用应用层网关或代理服务器 而对于出去的连接使用电路层网关 这样使得防火墙即能方便内部用户访问Internet 通过电路层网关 又能保证对内部网络有较高的安全保护 通过应用层网关 11 3防火墙的结构体系由于网络的拓扑结构 应用不同 防火墙的配置和实现方式也千差万别 当前 最主要的体系结构包括 包过滤 双宿网关 屏蔽主机 屏蔽子网 合并外部路由器和堡垒主机结构 合并内部路由器和堡垒主机结构 合并外部路由器和内部路由器的结构 两个堡垒主机和两个 非军事区 结构 牺牲主机结构 使用多台外部路由器的结构等 下面主要介绍前四种体系结构的防火墙 11 3 1包过滤防火墙包过滤防火墙能提供廉价但有用的网关安全等级 它往往可以用一台过滤路由器来实现 它的过滤能力来自路由器软件 包过滤防火墙一般设置在网络层 依据信息过滤规则对进出内部网络的信息进行分析 允许授权信息通过 禁止非授权信息通过 对所接收的每一个数据包作允许或拒绝的决定 其结构如图11 5所示 这种防火墙比较简单 但安全性能差 它无法提供使用者身份认证的功能 这种结构的防火墙的性能既有缺点同包过滤路由器 这里不必赘述 11 3 2双宿网关防火墙双宿网关防火墙又称为双重宿主主机防火墙 双宿网关结构是围绕至少具有两个网络接口的堡垒主机而构成的 其结构如图11 4所示 双宿网关的内外网络均可与堡垒主机实施通信 但内外网络之间不可直接通信 内外网络之间的IP数据流被堡垒主机完全切断 堡垒主机可以通过代理或让用户直接注册到其上 来达到很高程度的网络控制 双宿网关的结构采用主机取代路由器执行安全控制功能 从而达到受保护网除了看到堡垒主机外 不能看到其它任何系统的效果 同时堡垒主机不转发TCP IP通信报文 网络中所有服务都必须由此主机的相应代理程序来完成 所以堡垒主机的性能非常重要 Internet 双宿主主机 防火墙 内部子网 图11 4双宿主主机防火墙结构图 双重宿主主机 堡垒主机 用两种方式来提供服务 一种是用户直接登录到双重宿主主机上来提供服务 另一种是在双重宿主主机上运行代理服务器 第一种方式需要在双重宿主主机上开许多帐号 这是很危险的 第一 用户帐号的存在会给入侵者提供相对容易的入侵通道 每一个帐号通常有一个可重复使用口令 即通常用的口令 和一次性口令相对 这样很容易被入侵者破解 破解密码可用的方法很多 有字典破解 强行搜索或通过网络窃听来获得 第二 如果双重宿主主机上有很多帐号 管理员维护起来是很费劲的 第三 支持用户帐号会降低机器本身的稳定性和可靠性 第四 因为用户的行为是不可预知的 如双重宿主主机上有很多用户帐户 这会给入侵检测带来很大的麻烦 代理的问题相对要少得多 而且一些服务本身的特点就是 存储转发 型的 如HTTP SMTP和NNTP 这些服务很适合于进行代理 在双重宿主主机上 运行各种各样的代理服务器 当要访问外部站点时 必须先经过代理服务器认证 然后才可以通过代理服务器访问因特网 这种结构成本低 但是它存在单点失败的问题 由于双重宿主主机是唯一的隔开内部网和外部因特网之间的屏障 因此 把整个网络的安全性能全部托付与其中的单个安全单元 而这种没有增加网络安全的自我防卫能力的单个网络安全单元 又往往是黑客攻击的首选目标 如果入侵者得到了双重宿主主机的访问权 内部网络就会被入侵 所以为了保证内部网的安全 双重宿主主机应具有强大的身份认证系统 才可以阻挡来自外部不可信网络的非法登录 为了防止防火墙被入侵 在系统中 应尽量地减少防火墙上用户的帐户数目 使用双重宿主机应注意的是 首先要禁止网络层的路由功能 在UNIX内实现路由禁止必须重新配置和重建核心 除了要禁止IP转发 还应清除一些UNIX系统中的工具程序和服务 由于双宿主机是外部用户访问内部网络系统的中间转接点 所以它必须支持很多用户的访问 因此双宿主机的性能非常重要 11 3 3屏蔽主机防火墙屏蔽主机防火墙使用应用网关提供代理服务 其结构中提供安全保护的主机仅仅与内部网相连 还有一台单独的过滤路由器 该路由器强迫所有到达它的数据包发送到被其屏蔽的堡垒主机 并且只接受来自于堡垒主机的数据作为出去的数据 其结构如图11 5所示 该防火墙系统实现了网络层安全 包过滤 和应用层安全 代理服务 所以其安全等级比包过滤防火墙要高 通常在路由器上设过滤规则 并使堡垒主机成为从外部网络可直接到达的主机 要访问内部系统或服务的外部系统都须与此主机相连 所以入侵者在破坏内部网络的安全性之前 必须首先渗透两种不同的安全系统 堡垒主机配置在内部网络上 而包过滤路由器则放置在内部网络和英特网之间 在路由器上进行规则配置 使得外部系统只能访问堡垒主机 去往内部系统上其它主机的信息全部被阻塞 由于内部主机与堡垒主机处于同一个网络 内部系统是否允许直接访问英特网 或者是要求使用堡垒主机上的代理服务来访问英特网由机构的安全策略来决定 对路由器的过滤规则进行配置 使得其只接受来自堡垒主机的内部数据包 就可以强制内部用户使用代理服务 Internet 内部子网 堡垒主机 防火墙 路由器 图11 5屏蔽主机防火墙结构图 在采用屏蔽主机防火墙情况下 过滤路由器是否正确配置是这种防火墙安全与否的关键 过滤路由器的路由表应当受到严格的保护 否则如果路由表遭到破坏 则数据包就不会被路由到堡垒主机上 使堡垒主机被越过 因为屏蔽主机这种体系结构有堡垒主机被绕过的可能 堡垒主机与其他内部主机之间没有任何保护网络安全的东西存在 一旦堡垒主机被攻破 内部网将完全暴露 所以还有下面另一种体系结构 屏蔽子网 11 3 4屏蔽子网防火墙屏蔽子网防火墙系统用了两个包过滤路由器和一个堡垒主机 这个防火墙系统建立的是最安全的防火墙系统 因为在定义了 非军事区 网络后 它支持网络层和应用层安全功能 网络管理员将堡垒主机 信息服务器 Modem组 以及其它公用服务器放在 非军事区 网络中 非军事区 网络很小 处于英特网和内部网络之间如图11 6所示 在一般情况下对 非军事区 配置成使用英特网和内部网络系统能够访问 非军事区 网络上数目有限的系统 而通过 非军事区 网络直接进行信息传输是严格禁止的 对于进来的信息 外面的这个路由器用于防范通常的外部攻击 如源地址欺骗和源路由攻击 并管理英特网到 非军事区 网络的访问 它只允许外部系统访问堡垒主机 还可能有信息服务器 里面的路由器提供第二层防御 只接受源于堡垒主机的数据包 负责的是管理 非军事区 到内部网络的访问 对于去往英特网的数据包 里面的路由器管理内部网络到 非军事区 网络的访问 它允许内部系统只访问堡垒主机 还可能有信息服务器 外面的路由器上的过滤规则要求使用代理服务 只接受来自堡垒主机的去往英特网的数据包 Internet 外部路由器 内部路由器 非军事区 堡垒主机 内部网络 图11 6屏蔽子网防火墙结构图 内部路由器 又称阻塞路由器 位于内部网和 非军事区 之间 用于保护内部网不受 非军事区 和因特网的侵害 它执行了大部分的过滤工作 外部路由器的一个主要功能是保护 非军事区 上的主机 但这种保护不是很必要的 因为这主要是通过堡垒主机来进行安全保护的 外部路由器还可以防止部分IP欺骗 因为内部路由器分辨不出一个声称从 非军事区 来的数据包是否真的从 非军事区 来 而外部路由器很容易分辨出真伪 在堡垒主机上 可以运行各种各样的代理服务器 堡垒主机是最容易受侵袭的 虽然堡垒主机很坚固 不易被入侵者控制 但万一堡垒主机被控制 如果采用了屏蔽子网体系结构 入侵者仍然不能直接侵袭内部网络 内部网络仍受到内部过滤路由器的保护 如果没有 非军事区 那么入侵者控制了堡垒主机后就可以监听整个内部网络的对话 如果把堡垒主机放在 非军事区 网络上 即使入侵者控制了堡垒主机 他所能侦听到的内容是有限的 即只能侦听到周边网络的数据 而不能侦听到内部网上的数据 内部网络上的数据包虽然在内部网上是广播式的 但内部过滤路由器会阻止这些数据包流入 非军事区 网络 另外 根据不同的组合变化 防火墙的结构还有多堡垒主机结构 合并内外部路由器结构 合并堡垒主机和外部路由器结构 使用多外部路由器结构以及都参数网络结构等 11 4防火墙的关键技术防火墙只是保护网络安全与保密的一种概念 并无严格的定义 防火墙的研究与开发正日新月异 各种新产品 新功能不断涌现 到目前为止 防火墙所涉及的关键技术包括 包过滤技术 代理技术 电路级网关技术 状态检查技术 地址翻译技术 加密技术 虚拟网技术 安全审计技术 安全内核技术 身份认证技术 负载平衡技术 内容安全技术等 其中有些技术 比如加密 认证等 已经在前面作了介绍 所以 此处再介绍一些关键技术 11 4 1包过滤技术包过滤技术一般由一个包检查模块来实现 包过滤可以安装在一个双宿网关上或一个路由器上实现 当然也可以安装在一台服务器上 数据包过滤可以控制站点与站点 站点与网络 网络与网络之间的相互访问 但不能控制传输的数据的内容 因为内容是应用层数据 不是包过滤系统所能辨认的 数据包过滤允许你在单个地方为整个网络提供特别的保护 包检查模块深入到操作系统的核心 在操作系统或路由器转发包之前拦截所有的数据包 当把包过滤防火墙安装在网关上之后 包过滤检查模块深入到系统的在网络层和数据链路层之间 因为数据链路层是事实上的网卡 NIC 网络层是第一层协议堆栈 所以防火墙位于软件层次的最底层 通过检查模块 防火墙能拦截和检查所有出站和进站的数据 防火墙检查模块首先验证这个包是否符合过滤规则 不管是否符合过滤规则 防火墙一般要记录数据包情况 不符合规则的包要进行报警或通知管理员 对丢弃的数据包 防火墙可以给发方一个消息 也可以不发 这要取决于包过滤策略 如果都返回一个消息 攻击者可能会根据拒绝包的类型猜测包过滤规则的大致情况 所以对是否发一个返回消息给发送者要慎重 包检查模块能检查包中的所有信息 一般是网络层的IP头和传输层的头 包过滤一般要检查下面几项 IP源地址 IP目标地址 协议类型 TCP包 UDP包 ICMP包 TCP或UDP的源端口 TCP或UDP的目标端口 ICMP消息类型 TCP报头中的ACK位 此外 TCP的序列号 确认号 IP校验和 分割偏移也往往是要检查的选项 IP分段字段用来确定数据包在传输过程中是否被重新分段 分段带来的问题是只有第一个段有高层协议的报头 如TCP头 而其它的段中没有 数据包过滤器一般是让非首段包通过 而仅对第一个分段进行过滤 因为目标主机如果得不到第一个分段 也就不能组装一个完整的数据包 因此这样做是可以接受的 强大的防火墙应该考虑非第一个分段有可能泄露有用的信息 比如出站的NFS数据包几乎肯定要分段 内部网中的敏感数据经过NFS传输可能会泄露 因此防火墙要根据第一个分段的操作策略来决定是否转发非第一个分段 IP分段也经常用来进行拒绝服务器攻击 攻击者向目标主机发非第一个分段包 防火墙对这种包不作处理而直接让其通过 目标主机得不到第一个分段来重组数据包时 会放弃该包 同时发一个ICMP 数据组装超时 的包给源主机 如果目标主机大量收到这种非第一个分段包 它需要占用大量的CPU时间来进行处理 当达到一定极限之后 目标主机就不能处理正常的服务 而造成拒绝服务攻击 此外返回的ICMP也会泄露有用的消息 因此对这种ICMP 防火墙应该过滤掉 TCP是面向连接的可靠传输协议 TCP的可靠主要是通过下面三个条来保证的 l目标主机将按发送的顺序接受应用数据 l目标主机将接受所有的应用数据 l目标主机将不重复接受任何数据 TCP协议通过对错误的数据重传来保证数据可靠到达 并且事先要建立起连接才能传输 如果要阻止TCP的连接 仅阻止第一个连接请求包就够了 因为没有第一个数据包 接收端不会把之后的数据组装成数据流 且不会建立起连接 UDP数据包和TCP数据包有相似之处 UDP数据包中也有源端口和目标端口 但没有确认号 序列号 ACK位 故UDP数据包的过滤特性和TCP数据包有所不同 包过滤系统无法检查UDP包是客户到服务器的请求 还是服务器对客户的响应 要对UDP数据包进行过滤 防火墙应有动态数据包过滤的特点 就是说防火墙应记住流出的UDP数据包 当一个UDP数据包要进入防火墙时 防火墙会看它是否和流出的UDP数据包相配 若相匹配则允许它进入 否则阻塞该数据包 UDP的返回包的特点是目标端口是请求包的源端口 目标地址是请求包的源地址 源端口是请求包的目的端口 源地址是请求包的目标地址 ICMP数据包是用来响应请求 应答 超时 无法到达目标和重定向等 包过滤应根据ICMP的类型来进行过滤 ICMP数据包用于主机之间 主机和路由器之间的路径 流量控制 差错控制和阻塞控制等 包过滤应根据ICMP的类型来进行过滤 ICMP数据包被封装在IP包中 不同的消息类型用于不同类型的机器 如有的消息只能由路由器发出 由主机来接受 比如当路由器禁止一个数据包通过 通常路由器将返回一个ICMP报文给发送主机 黑客如果攻击内部网 通过分析返回的ICMP报文的类型可以知道哪种类型的数据包被禁止 他可以大致分析出防火墙采用的过滤规则 所以防火墙应该禁止返回有用的ICMP报文 因为ICMP报文会泄露一些信息 在决定包过滤防火墙是否返回ICMP错误代码时 应作以下几点考虑 1 防火墙应该发送什么消息 2 你是否负担得起生成和返回错误代码的高额费用 3 返回错误代码能使得侵袭者得到很多你的数据包过滤信息 4 什么错误代码对你的站点有意义 包过滤对用户来说有以下的优点 帮助保护整个网络 减少暴露的风险 对用户完全透明 不需要对客户端作任何改动 也不需要对用户作任何培训 很多路由器可以作数据包过滤 因此不需要专门添加设备 包过滤最明显的缺陷是即使是最基本的网络服务和协议 它也不能提供足够的安全保护 包过滤是不够安全的 因为它不能提供防火墙所必须的防护能力 它的缺点主要表现在 包过滤规则难于配置 一旦配置 数据包过滤规则也难于检验 包过滤仅可以访问包头信息中的有限信息 包过滤是无状态的 因为包过滤不能保持与传输相关的状态信息或与应用相关的状态信息 包过虑对信息的处理能力非常有限 一些协议不适合用数据包过滤 如基于远程过程调用的应用 11 4 2代理技术代理 Proxy 技术与包过滤技术完全不同 包过滤技术是在网络层拦截所有的信息流 代理技术是针对每一个特定应用都有一个程序 代理是企图在应用层实现防火墙的功能 代理的主要特点是有状态性 代理能提供部分与传输有关的状态 能完全提供提供与应用相关的状态和部分传输方面的信息 代理也能处理和管理信息 代理使得网络管理员能够实现比包过滤路由器更严格的安全策略 应用层网关不用依赖包过滤工具来管理英特网服务在防火墙系统中的进出 而是采用为每种所需服务而安装在网关上特殊代码 代理服务 的方式来管理英特网服务 应用层网关能够让网络管理员对服务进行全面的控制 如果网络管理员没有为某种应用安装代理编码 那么该项服务就不支持并不能通过防火墙系统来转发 同时 代理编码可以配置成只支持网络管理员认为必须的部分功能 提供代理服务的可以是一台双宿网关 也可以是一台堡垒主机 允许用户访问代理服务是很重要的 但是用户是绝对不允许注册到应用层网关中的 假如允许用户注册到防火墙系统中 防火墙系统的安全就会受到威胁 因为入侵者可能会在暗地里进行某些损害防火墙有效性运动作 例如 入侵者获取Root权限 安装特洛伊马来截取口令 并修改防火墙的安全配置文件 提供代理的应用层网关主要有以下优点 1 应用层网关有能力支持可靠的用户认证并提供详细的注册信息 2 对于应用层的过滤规则相对于包过滤路由器来说更容易配置和测试 3 代理工作在客户机和真实服务器之间 完全控制会话 所以可以提供很详细的日志和安全审计功能 4 提供代理服务的防火墙可以被配置成唯一的可被外部看见的主机 这样可以隐藏内部网的IP地址 可以保护内部主机免受外部主机的进攻 5 通过代理访问Internet可以解决合法的IP地址不够用的问题 因为Internet所见到只是代理服务器的地址 内部不合法的IP通过代理可以访问Internet 然而 应用层代理也有明显的缺点 主要包括 1 有限的连接性 代理服务器一般具有解释应用层命令的功能 如解释FTP命令 Telnet命令等 那么这种代理服务器就只能用于某一种服务 因此 可能需要提供很多种不同的代理服务器 如FTP代理服务器 Telnet代理服务器等等 所以能提供的服务和可伸缩性是有限的 2 有限的技术 应用层网关不能为RPC talk和其它一些基于通用协议族的服务提供代理 性能 应用层实现的防火墙会造成明显的性能下降 3 每个应用程序都必须有一个代理服务程序来进行安全控制 每一种应用升级时 一般代理服务程序也要升级 4 应用层网关要求用户改变自己的行为 或者在访问代理服务的每个系统上安装特殊的软件 比如 透过应用层网关Telnet访问要求用户通过两步而不是一步来建立连接 不过 特殊的端系统软件可以让用户在Telnet命令中指定目标主机而不是应用层网关来使应用层网关透明 此外 代理对操作系统和应用层的漏洞也是脆弱的 不能有效检查底层的信息 传统的代理也很少是透明的 从历史发展的观点来说 应用层网关适应英特网的通用用途和需要 但是 英特网的环境在不断动态变化 现在 新的协议 服务和应用在不断出现 代理不再能处理英特网上的各种类型的传输 不能满足新的商业需求 不能胜任对网络高带宽和安全性的需要 11 4 3电路级网关技术应用层代理为一种特定的服务 如FTP Telnet等 提供代理服务 代理服务器不但转发流量而且对应用层协议做出解释 而电路级网关也是一种代理 但是只是建立起一个回路 对数据包只起转发的作用 电路级网关只依赖于TCP连接 并不进行任何附加的包处理或过滤 在电路级网关中 数据包被提交给用户应用层来处理 网关只用来在两个通信终点之间转接数据包 只是简单的字节回来拷贝 由于连接似乎是起源于防火墙 其隐藏了受保护网络的有关信息 这种代理的优点是它可以对各种不同的协议提供服务 但这种代理需要改进客户程序 这种网关对外像一个代理 而对内则是一个过滤路由器 一个简单的电路级网关仅传输TCP的数据段 增强的电路级网关还应该具有认证的功能 电路级网关的一个缺点是 同应用层网关技术一样 新的应用出现可能会要求对电路级网关的代码作相应的修改 11 4 4其他关键技术1 状态检查技术状态检查技术能在网络层实现所需要的防火墙能力 防火墙上的状态检查模块访问和分析从各层次得到的数据 并存储和更新状态数据和上下文信息 为跟踪无连接的协议提供虚拟的会话信息 防火墙根据从传输过程和应用状态所获得的数据以及网络设置和安全规则来产生一个合适的操作 要么拒绝 要么允许 或者是加密传输 任何安全规则没有明确允许的数据包将被丢弃或者产生一个安全警告 并向系统管理员提供整个网络的状态 这种防火墙的安全特性是非常好的 它采用了一个在网关上执行网络安全策略的软件引擎 称之为检测模块 检测模块在不影响网络正常工作的前提下 采用抽取相关数据的方法对网络通信的各层实施监测 抽取部分数据 即状态信息 并动态地保存起来作为以后制定安全决策的参考 检测模块支持多种协议和应用程序 并可以很容易地实现应用和服务的扩充 与其它安全方案不同 当用户访问到达网关的操作系统前 状态监视器要抽取有关数据进行分析 结合网络配置和安全规定作出接纳 拒绝 鉴定或给该通信加密等决定 一旦某个访问违反安全规定 安全报警器就会拒绝该访问 并作记录 向系统管理器报告网络状态 状态监视器的另一个优点是它会监测RPC和UDP之类的端口信息 包过滤和代理网关都不支持此类端口 这种防火墙无疑是非常坚固的 但它的配置非常复杂 而且会降低网络的速度 2 地址翻译技术地址翻译NAT就是将一个IP地址用另一个IP地址代替 地址翻译主要用在两个方面 网络管理员希望隐藏内部网络的IP地址 这样英特网上的主机无法判断内部网络的情况 内部网络的IP地址是无效的IP地址 这种情况主要是因为现在的IP地址不够用 要申请到足够多的合法IP地址很难办到 因此需要翻译IP地址 在上面两种情况下 内部网对外面是不可见的 英特网不能访问内部网 但是内部网内主机之间可以相互访问 应用网关防火墙可以部分解决这个问题 例如 也可以隐藏内部IP 一个内部用户可以Telnet到网关 然后通过网关上的代理连接到Internet 但是应用层网关有它的缺陷 要为每一种应用定制代理 如果没有为某种服务的提供入站或出站的代理 这种服务就不能使用 代理是不透明的 因此即使合法的出站用户通过应用网关 也会给网关代来很大的开销 因为代理对数据包转发是在应用层进行的 一旦通过代理建立起到目标主机的连接 代理一般就不作控制 不能为基于TCP以外的的应用很好的提供代理 地址翻译可以提供一种透明的完善的解决方案 网络管理员可以决定哪些内部的IP地址需要隐藏 哪些地址需要映射成为一个对英特网可见的IP地址 地址翻译可以实现一种 单向路由 这样不存在从英特网到内部网的或主机的路由 3 安全审计技术绝对的安全是不可能的 因此必须对网络上发生的事件进行记载和分析 对某些被保护网络的敏感信息访问保持不间断的记录 并通过各种不同类型的报表 报警等方式向系统管理人员进行报告 比如在防火墙的控制台上实时显示与安全有关的信息 对用户口令 非法访问进行动态跟踪等 4 安全内核技术除了采用代理以外 人们开始在操作系统的层次上考虑安全性 例如考虑把系统内核中可能引起安全问题的部分从内核中去掉 形成一个安全等级更高的内核 从而使系统更安全 例如Cisco的PIX防火墙等 安全的操作系统来自对操作系统的安全加固和改造 从现有的诸多产品看 对安全操作系统内核的加固与改造主要从以下几个方面进行 取消危险的系统调用 限制命令的执行权限 取消IP的转发功能 检查每个分组的端口 采用随机连接序列号 驻留分组过滤模块 取消动态路由功能 采用多个安全内核 5 负载平衡技术平衡服务器的负载 由多个服务器为外部网络用户提供相同的应用服务 当外部网络的一个服务请求到达防火墙时 防火墙可以用其制定的平衡算法确定请求是由哪台服务器来完成 但对用户来讲 这些都是透明 6 内容安全技术内容安全性提供对高层服务协议数据的监控能力 确保用户的安全 包括计算机病毒 恶意的JavaApplet或ActiveX的攻击 恶意电子邮件及不健康网页内容的过滤防护 11 5 1防火墙技术的发展趋势目前 混合应用包过滤技术 代理服务技术和其他一些技术 如动态包过滤 内核透明代理 用户身份认证 智能日志 审计跟踪 加密技术等新的防火墙技术正向我们走来 1 动态包过滤传统的包过滤给予单个IP包包头中的源 目的IP地址 源 目的端口号 协议类型等 判断包是否转发或丢包 目前包过滤技术向着更具柔性和多功能的方向发展 比如动态包过滤技术 动态包过滤还可以与其数据流相适应 基于ICP连结和通信过程中的状态变化及上下文内容 建立临时会话状态表来控制访问 例如TIS公司和Statefulfilering就是采用动态包过滤技术 是一种包过滤防火墙 CiscoPIX防火墙 CheckPointFirewall也是对数据进行动态包过滤 其过滤规则可由路由器快速地配置 2 内核透明代理现在越来越多的应用支持代理方式 而且网络操作系统采用最小内核技术 关闭了IPforwarding等功能子系统 加入IPSec IP V6 等支持 以提供加密的IP通信 对提供的服务赋予最小特权 并使提供的服务独立 以提供防火墙的安全基石 在内核级实现了代理服务 做到协议和应用透明 采用包截取方法 截取数据报 带作出授权校验后 决定转发或丢弃 整个过程对用户透明 3 用户强认证机制传统防火墙缺乏用户认证机制 其安全强度较低 现在的防火墙都加入用户认证机制 对远程用户访问实施
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 试工协议书简略版本
- 山西跨省团队旅游协议书
- 拆迁送达协议书要求
- QQ打开弹出用户协议书
- 2025年RFB协议运维管理题库
- 商铺水电使用协议书
- 并存性管辖协议书
- 2025年新能源汽车快充系统兼容性测试考核试卷
- 2025年供应链管理行业供应链数字化升级创新模式研究报告及未来发展趋势预测
- 2025年科技行业区块链公益慈善转化科技成果转化考核试卷
- GB/T 3098.2-2015紧固件机械性能螺母
- GB/T 29639-2020生产经营单位生产安全事故应急预案编制导则
- FZ/T 64056-2015洁净室用擦拭布
- 员工考勤记录表
- 《质量免费》读书心得
- 一年级上册道德与法治 课件-第四单元 天气虽冷有温暖 复习课件 部编版 (共18张PPT)
- 生理学 第二章第四节 肌细胞的收缩
- 钢轨安装施工方案全套完整
- 初中语文人教七年级上册要拿我当一挺机关枪使用
- DB11T 2000-2022 建筑工程消防施工质量验收规范
- 外贸危险货物标志标记监督管理规定
评论
0/150
提交评论