基于WBM的入侵防御系统的研究及实现
2013-10-11何春林
何春林
【摘 要】入侵防御系统是在防火墙和入侵检测系统的基础上发展而来的,本文研究并实现了一个基于WBM的入侵防御系统。系统采用基于WBM(Web Based Management)的方式进行管理和控制,各分布式引擎及服务器控制中心都是安装在Linux操作系统下的,入侵防御引擎用C语言实现了系统对底层的访问控制,B/S架构的其他层采用Java语言来实现。
【关键词】入侵防御系统;WBM;入侵检测;防火墙;网络安全
一、引言
因特网的飞速发展,标志着信息的共享发展到了一个新高度,但随之而来的网络安全问题也愈发突出。据统计,平均每20秒就有一个网络遭到入侵。通过IP地址欺骗、非法进入系统和盗窃密码等手段,入侵者不断地盗窃各种单位内宝贵的数据资料,面向计算机网络的犯罪每年增长约30%。
由于用户需求的提升,入侵检测产品不断更新。但是,仅仅检测到入侵是不够的,还要对检测到的入侵进行分析和响应,入侵检测系统加入侵响应系统就成为入侵防御系统(IPS)。要想实现两个系统的功能,不能只是简单地把两个系统进行物理迭加,必需对它们进行集中控制,实现两个系统的交互。这也就是本文所要研究的内容。
二、相关理论
(一)防火墙
防火墙是网络安全防卫的重要措施。通常,防火墙被安装在受保护的内网和外网之间的连接点上,所有进出内网的数据都必需经过防火墙,这样防火墙就能够在此检查这些数据,采取防范措施。防火墙亦可被认为是一种访问控制机制,决定哪些数据允许被外部访问,哪些不允许。从逻辑上讲,防火墙是一个分离器、限制器,也是一个分析器。
但是,防火墙也有本身的一些局限性。比如:无法防范其它途径(绕过防火墙)的攻击,很难防范内部用户有意或无意带来的威胁,也不能防止传送已经感染病毒的文件或软件,无法防范数据驱动型的攻击。而且由于防火墙受到验证、测试等方面的限制,很难证明防火墙的防护能力及失效状态。
(二)入侵检测系统
入侵检测系统IDS(Intrusion Detection System)是用来监视和检测入侵事件的系统,被认为是防火墙之后的第二道安全闸门。当有敌人或恶意用户试图通过Internet进入网络甚至计算机系统时,IDS能够检测出来,并进行报警,通知网络采取措施进行响应。
然而,入侵检测系统也存在一些难以克服的问题,主要表现在:对信息重新编码就可能骗过入侵检测系统的检测,入侵检测系统的评价目前还没有客观标准,标准不统一使得IDS之间的互联互通几乎不可能,采用不恰当的自动反应可能会给系统造成极大风险。
(三)入侵防御系统
IDS给网络带来的安全是不够的,应该使用入侵防御系统(IPS,Intrusion Prevention System or Intrusion Protection System)来代替IDS。在网络入侵防御系统中,联动就是在防火墙、IDS、防病毒系统、VPN (virtual private network), CA(Certificate Authority)等安全成员之间建立一种相互作用和影响的机制。
一个网络中如果防火墙产品质量是9分,防病毒产品是8分,入侵监测产品质量是7分,内容过滤是5分的话,那么该网络最后的综合安全评分还是5分,因为不安全因素往往就出现在最薄弱的环节。这就是所谓的“木桶原理”。而通过联动策略,在强强组合的基础上,自由选择各方面都最优的产品,从而构建最强的防御系统。
三、总体设计
(一)系统概述
入侵防御系统采用目前流行的B/S多层架构,即通过Web方式实现分布式入侵防御引擎的集中管理。因此,整个系统的开发分为两部分,一是服务器控制中心的开发,二是分布式入侵防御引擎的开发。
服务器控制中心是整个入侵防御系统的核心,是系统的管理界面。IPS的网络会话、性能管理、审计分析和系统管理,都由服务器控制中心来实现。分布式入侵防御引擎的控制工作也由服务器控制中心来统一进行管理,图1为入侵防御系统的总体设计图。
(二)开发环境
(1)选择操作系统。操作系统选择的是Linux,虽然操作没有Windows系列方便,但除此之外Linux的优点很多,比如内核代码完全开放,这为系统设计提供了极大方便;国内对Linux的代码分析工作也小有成效,已有大量的相关书籍出版;此外,专业研究人员对Linux业已进行了一定的研究开发工作。Linux版本很多,笔者选择了Red Hat,因为它的安装与删除设计良好。
(2)Jdk+Tomcat+Apache+Mysql环境。在安装Red Hat 操作系统时要选择定制 (custom)安装,以使OS提供足够的开发环境和工具。
1、安装准备。首先是Red Hat 自带的apache2.0.40,apache是目前应用非常广的Web 服务器,系统自带的apache中的模块包里包括了大多流行的模块。其次是tomcat压缩包,tomcat应用服务器是一种容器,它提供Web服务,而且是Server端应用程序的编译环境。最后,需要connector把tomcat和apache整合到一起,就是用这个connector把Web 服务器的一些请求重定向到应用服务器。整合apache和tomcat的重点在于需要自己编译一个connector,因为它和使用的应用服务器的版本相关。
2、安装配置过程。首先安装JDK,安装jdk后建立链接。其次安装tomcat,但运行tomcat之前要完成系统环境变量的设置。再次安装apache,而且一定要用与系统同版本的apache,否则会出问题。最后编译connector。Mysql的安装不再论述。
四、基于WBM的控制管理
WBM(Web Based Management)是一种将WWW技术应用于网络和设备管理的技术,被称为“基于Web的管理”,各大著名公司如Sun ,IBM和3COM等都先后推出了相关产品。这些厂商正以一种新的形式去应用管理信息系统。
目前,基于WEB的管理模式有两种模型:基于代理的WBM和嵌入式的WBM。嵌入式WBM不局限于传统的工作站,无需任何中介便可以直接访问网络设备。
五、入侵防御系统的测试
(一)测试环境
测试环境如下:两台装有Linux的计算机,安装入侵防御引擎,其中一台机器还充当服务器控制中心。一台安装Window的计算机,作为B/S架构的客户端,实现对入侵防御系统的访问。一台Ethernet Hub(集线器),安装在局域网的入口。
(二)OTP测试
两种OTP算法可以对不同身份的用户进行验证:快速法用于查看人员,安全法用于管理人员。
(三)入侵防御的测试
入侵监测用工具模拟SYN 泛洪攻击,SYN 泛洪是当前最流行的分布式拒绝服务攻击的方式之一,利用TCP的协议缺陷,使得被攻击方资源耗尽的攻击方法,图中为检测到的SYN 泛洪攻击的入侵记录。
六、结论
随着网络的迅猛发展及安全问题的日益严重,入侵防御必将随着入侵检测和防火墙的发展而不断壮大,而且,它必将联动所有的网络安全产品。
入侵防御系统采用基于WBM的方式进行管理,分析网络受到的安全威胁,采用OTP的身份认证技术来保证网络的安全,研发了两种OTP算法。入侵防御系统的各分布式引擎及服务器控制中心都是安装在Linux操作系统下的,用C语言实现了系统对底层的访问控制,B/S架构的其他层采用Java语言来实现,给用户提供一个了友好的界面。
本系统的研发也有一些不足之处,比如不能对分布式入侵防御引擎进行自动部署等,有待于下一步深入研究。
参考文献:
[1]马俊,王志英,任江春等.一种实现数据主动泄露防护的扩展中国墙模型[J].软件学报,2012(3): 677-687
[2]谢柏林,余顺争. 基于应用层协议分析的应用层实时主动防御系统[J].计算机学报,2011(3): 3452-34633