有关防火墙免疫系统的设计与实现探析
- 作者:admin 来源:网络 日期:2009-1-12 1:31:54
- 摘要:本文对防火墙自身安全问题进行了研究分析,提出了解决防火墙安全隐患的策略,并且给出了一个具体的实现方案——防火墙免疫系统。防火墙免疫系统通过完整性检查模块以及审计分析模块,保障防火墙系统安全。
关键词:攻击;防火墙系统安全;防火墙免疫系统;完整性检查;审计分析
前言
防火墙是保护网络安全的主要产品。它的作用是在不安全的网络环境中构造一个相对安全的子网环境,以防止发生不可预测的、潜在破坏性的侵入。它是提供信息安全服务,实现网络和信息安全的基础设施。防火墙可通过监测、限制、更改跨越防火墙的数据流,尽可能地对外部屏蔽网络内部的信息、结构和运行状况,以此来实现网络的安全保护。代写论文网
任何防火墙都是由硬件平台、基本操作系统和防火墙功能软件组成的,目前涌现的防火墙无论软件防火墙或硬件防火墙,其实质都是软件,只是产品的表现形态不一样而已。无论是在普通的PC机上安装防火墙功能软件,还是将所有的软件、硬件都预先装在一个漂亮的机箱里,如果无法有效保护自身防火墙系统免受攻击或阻止攻击者进入内部网络,其后果都是灾难性的。
一、防火墙面临的威胁
一直以来,黑客都在研究攻击防火墙的技术和手段,攻击的手法和技术越来越智能化和多样化。但就黑客攻击防火墙的过程上来看,大致可以归纳为以下三类。
1、探测在目标网络上安装的是何种防火墙系统并且找出此防火墙系统允许哪些服务。
2、采取地址欺骗、TCP序号攻击等手法绕过防火墙的认证机制,从而对防火墙和内部网络破坏。
3、寻找、利用防火墙系统实现和设计上的安全漏洞,从而有针对性地发动攻击。这种攻击难度比较大,可是破坏性很大。
无论何种防火墙,在第三种攻击面前都显得非常脆弱,因为这是防火墙本身带有的缺陷。对于防火墙生产商的泰斗CheckPoint公司也是如此。CheckPoint防火墙在实现时定义了一种自己的协议RDP(使用UDP协议,259端口)。为了简化加密过程,VPN/FireWall-1默认允许RDP包穿过防火墙网关。在某些条件下,人为构造带有RDP头部的包,可以骗过VPN/FireWall-1,虽然根据规则这种包不能通过。如果攻击者成功的在防火墙保护的网络内部安装了一个应用程序,该应用程序监听259号UDP端口,那么攻击者便成功的绕过了防火墙的保护。它的攻击思想类似于VPN的实现原理,攻击者将一些恶意的攻击数据包隐藏在一些协议分组的头部,从而穿透防火墙系统对内部网络进行攻击。
防火墙系统安全的设计关键就在于解决针对第三种类型的攻击,从而提高防火墙系统的抗攻击能力。本文并不是讨论防止通过网络攻击防火墙系统,而是在研究如何防止在防火墙基础操作系统被攻击的情况下提高防火墙的抗攻击性。
二、防火墙免疫系统的意义
举个例子来说,在防火墙保护的可信网络的内部,有来自于内部或者外部的攻击者发现了防火墙设计上的一些问题,利用其防火墙对内部网络的某些信任关系获得了对防火墙系统的管理权限,并修改了防火墙系统。如果这种行为只是内部用户为了上网方便,那这样的危害倒不是很严重,但如果利用这样的信任关系的是外部恶意入侵者,目的是为它与内网的联系打开门户的话,那其后果就不堪设想了。这归根到底都是因为防火墙的安全策略、规则列表是防火墙系统的灵魂。得到了它们,并且修改它们为己所用,就等于得到整个内部网络的资源。这样的攻击是对防火墙最具威胁的攻击。因此我们首先考虑的就是防火墙系统的安全。
怎样保证防火墙的自身安全性?常有两种方法:一、加强基础操作系统的安全,二、对不安全的基础操作系统进行有效保护。大部分硬件防火墙厂商都声称使用了“自主开发”的安全操作系统。但是即使最简化的操作系统也会涉及到内存管理、总线管理、设备管理、代码编译、中断管理等诸多复杂问题。这些工作量和复杂度往往是不可估量的。就是在现有操作系统的基础上进行改造,要实现基础操作系统的安全性也是不现实的。我们的目的是寻找一种行之有效又切实可行的解决办法。
防火墙的系统安全就是要保证防火墙自身的文件、数据、信息的安全,一个完善的防火墙必须要充分考虑防火墙的系统安全与操作系统的安全分离。防火墙免疫系统是防火墙系统提高系统安全的重要手段。通过对防火墙自身的文件、数据、信息进行检测和校验,保证这些防火墙重要元素的安全,由防火墙自已来确保自己的系统安全。
三、防火墙免疫系统概述
保护系统免受攻击的行为由防火墙功能软件实现,那么怎么来保护防火墙自身的重要数据和信息呢?这就是我们开发的防火墙免疫系统模块。下面是增加免疫功能的防火墙的系统结构框图,从中可以很清楚的看出免疫系统在整个防火墙系统中的位置和作用。
防火墙免疫系统是防火墙用户系统的一个组成部分,防火墙免疫系统主要包含两个模块:完整性检查模块、审计分析模块。
完整性检查模块主要功能是对防火墙的重要文件和数据进行完整性检查。在入侵者进入系统后而让系统文件并不改动是非常困难的,所以它是有效检测防火墙是否受到攻击的方法。该模块是系统的核心,用来鉴别防火墙系统是否被修改,如有变动,则恢复或者升级防火墙系统。
审计分析模块主要功能是对防火墙的重要文件和数据的访问做详细的记录和分析。如果防火墙被修改了,根据该模块的记录可以追踪入侵者的踪迹,根据结果衡量防火墙的改动情况,如有必要进行防火墙的升级,修改系统安全策略。
四、防火墙免疫系统的设计方案
下面是防火墙免疫系统的结构和流程图,其中清楚的反映了免疫系统的组成结构、两个模块的处理流程和两个模块之间的消息交换。
下面分别对各个模块进行阐述:
1、完整性检查模块
完整性检查模块作用的对象是防火墙系统的关键文件——如配置文件和过滤规则文件。将它们在初始的时候做数字摘要,然后再将这些摘要加密存放在文件里。进行完整性检查时,对要检测的文件做摘要,并对原来加密存放的摘要文件进行解密。将两个结果做比较,如果完全匹配,则说明文件没有被更改。如果不匹配,说明文件被改动了。然后在生成的报告中查阅文件被改动的具体情况。
文件的数字文摘采用单向散列函数(Hash)计算得到。不管文件长度如何,它的散列函数计算结果都是一个固定长度的数字。单向散列函数是在一个方向上工作的散列函数,从预映射的值很容易计算出散列函数值,但要根据散列值去猜测某一特定的值很困难。采用安全性高的Hash算法。目前应用较多的Hash算法有两种:MD5和SHA。MD5产生128位摘要,SHA可以产生160位的摘要。两个不同的文件几乎不可能得到相同的Hash结果。这样做了以后,当文件一被修改,就可检测出来。虽然Hash函数不可逆,但是如果将数字文摘直接以明文的形式存放在系统中是不安全的,因为高级的攻击者会跟踪管理员的行为,探察系统所采用的Hash算法,如果他将被改动的文件再经过相同的Hash算法保存起来,那么管理员在对防火墙系统做完整性检查的时候就检测不到入侵,所以Hash文件必须要加密存储。
加密Hash文件的时候可采用安全性高且速度快的加密算法,如RC4。它是一个可变密钥长度的序列密码。根据输入的不同长度的密钥,得到一个随机字节来作为加密的密钥对文件加密。每次需要对防火墙系统做完整性检查的时候,如果都是手工输入密钥,是非常不安全的,Windows下很容易记录键盘的击键记录,而且管理员容易忘记。所以需要专门的密钥生成和管理模块,每次做完整性检查的时候自动从密钥库中提取密码。密钥库存放在只读介质上或随身携带的加密卡上。密钥的选择应该向“一次一密”的标准看齐。密钥经加密并存放于安全区域内,使用时由系统自动获取并脱密。
审计分析模块是防火墙载入以后就一直要运行的,而完整性检查模块则不是。运行完整性检查模块的时机:
l管理员主动执行时
l防火墙系统被试图改变、审计系统有报告,因为这时要加入新的访问控制规则。
l在一定时间由防火墙系统自动运行
代写论文联系方式
联系QQ:904272800

联系信箱:904272800@qq.com

代写论文导航
客户、写手申请单
最新论文
热点论文