张风雷 霍旺
【摘要】 随着网络通信与计算机技术的飞速发展,新的Web技术以突出的互动性和实时性等众多优点迅速普及,新技术和新应用也引入了新的安全问题。在对各种Web攻击深入分析的基础上,结合攻击模型设计了基于入侵检测系统和防火墙阻断联动的防御体系。测试结果表明,联动的防御体系架构可以很好地抵御典型的Web攻击。
【关键词】 IDS Web攻击 防火墙
一、引言
当前,WEB类应用系统部署越来越广泛,但是由于WEB安全事件频繁发生,既损害了WEB系统建设单位的形象,也可能直接导致经济上的损失,甚至产生严重的政治影响。2011年底曝出多网站泄密事件,事故发生主要原因在于网站存在漏洞,从而遭到黑客入侵拖库。通过360网站安全检测的统计,目前国内存在高危漏洞2011年底曝出多网站泄密事件,事故发生主要原因在于网站存在漏洞,从而遭到黑客入侵拖库。通过360网站安全检测的统计,目前国内存在高危漏洞的网站约站36%,中危漏洞的网站约占16%,而相对比较安全的网站仅有48%[1]。而根据CNCERT监测数据,2012年9月境内被篡改网站数量多达2219个,数量最多的仍是COM类网站。其中,GOV类网站有182个(约占境内8.2%)[2]。网站安全是一个综合性多元化问题,如何通过专业技术保障而减少对系统安全的威胁为本文所探讨的重要内容。
二、常见WEB系统攻击方式
如今黑客攻击的趋势逐渐由传统的网络层偏向应用层,应用WEB化趋势更进一步加剧了WEB安全威胁的影响。Web应用系统的安全涵盖了网络安全、主机安全、数据库安全、中间件安全、Web服务器安全与Web应用安全等多个层面。
2.1 SQL注入和XSS攻击
SQL注入攻击是一种传播范围广、危害严重的主动攻击方式。由于应用程序对通过SQL语句提交的用户输入内容缺乏必要的过滤机制,攻击者可以在输入的内容中加入SQL语句以及参数,从而实现数据库操作,如查询、插入、修改等[3]。利用SQL注入漏洞,攻击者只需找到一个参数传递的地方,在应该输入参数的地方同时输入数据库命令,使数据库执行命令,就可以轻松获得非法的信息,导致信息泄漏、数据丢失、记录篡改。
XSS攻击(Cross.Site Scripting,跨站脚本攻击)现在应用最广泛,杀伤力也很大的漏洞。注入漏洞是因为字符过滤不严谨所造成的,可以得到管理员的帐号密码等相关资料。在WEB应用中, 当用户提交数据与服务器进行交互时, 攻击者将恶意脚本隐藏在用户提交的数据中,破坏服务器正常的响应页面。通过社会工程学等方法,诱骗用户点击和访问虚假的页面,达到偷窃用户信息、下载恶意脚本等目的。
2.2 访问控制
缺少经验的系统管理员往往没有正确的设置服务器文件系统的权限当一个入侵者获得到Web服务器上的较低的权限时,通常会想方设法的提升自己的权限,而服务器文件系统的权限系统没有正确设置时,可以通过较低的权限下获取到服务器上的敏感信息,为提升权限提供了条件。攻击者在动态网页的输入中使用各种非法数据,以实现获取服务器敏感数据的目的,没有经过严密的代码审核和测试就放到网上进行应用,一旦攻击者发现漏洞,就可以访问未授权的内容,还可以进行删除、修改网站内容,甚至控制整个网站和服务器。
2.3 拒绝服务和缓冲区溢出攻击
攻击者通过构造大量的无效请求或利用系统漏洞构造非法请求,耗尽WEB服务器或带宽的资源,导致WEB服务器崩溃,使Web服务器不能响应正常用的访问。对于一个网络应用程序而言,它不会很容易地分辨出攻击和正常网络通讯之间的差别,有许多的因素造成了这种情况,但是其中最重要的一点就是至今还没有一种可靠的方法来确定请求来自何方,这也就为过滤掉那些恶意的请求造成了巨大的困难。对于分布式拒绝服务攻击,Web应用程序很难区别这是一个真正的攻击,还是成千上万个用户同时访问[4]。
除了上面所列的几种Web服务器常见的攻击威胁外,Web服务器上所运行的动态脚本(ASP、ASP.NET、JSP和PHP等等)自身所带的Bug也会给Web服务器的安全带来极大的威胁[5]。恶意的攻击者可能可以利用这些脚本中的Bug轻易的获得Web服务器的权限。而有的管理员因为设置上的疏忽(数据库的路径没有保护等等),给入侵者创造了攻击条件。
三、安全模型
著名的美国互联网安全系统公司ISS在PDR 模型的基础上,提出以安全策略为中心的PPDR 模型。PPDR 的组成部分主要包括安全策略、防护、检测和响应四个方面,其中安全策略作为整个模型的核心和安全实施的依据,其他各部分围绕着安全策略,在网络安全的不同层面上发挥着各自的作用。PPDR 安全模型以安全策略为中心,各环节相互影响、相互促进。防火墙处于内网网络数据的出入口,通过预先设定的安全策略对进入内网的数据包进行检查,过滤掉一部分入侵攻击,而由于安全策略和防火墙的一些缺陷的存在,另一部分入侵者骗过了防火墙或者绕过防火墙成功进入到内部网络。成功进入到内网的攻击在内部网络中再一次受到入侵检测系统的排查。
当入侵检测系统发现相关网络异常之后,立即做出相应,向防火墙发出报警并传送报警事件的相关信息。防火墙在接收到安全事件报警后,立即采取诸如阻断连接之类的响应措施以阻止当前攻击的进一步动作,并根据报警的相关内容及时调整安全策略,以防止类似的入侵事件再一次发生。
四、入侵防御系统架构的设计和测试结果
通过 PPDR 安全模型我们可以看出,防火墙和入侵检测系统都是网络安全体系中非常重要的一环。但单纯的防火墙或是入侵检测系统都不足以构成一个完整的网络安全防御体系。防火墙执行访问控制策略,阻止来自外部网络的攻击行为,为内部网络提供安全保护,可认为是PPDR 中的防护环节。显然,将防火墙与入侵检测系统相结合,在防护和检测两个环节中加入响应环节,将它们有效的结合起来,协同工作,相互补充,组成一个坚实的整体,才能为网络提供充实的安全性保障。
4.1 防火墙及其局限性
防火墙(Firewall)是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列安全部件的组合。从防火墙技术来分,可以分为包过滤型和应用代理型两大类。尽管防火墙经过几代的发展,在主动性检测力面有所提高,仍然不能有效检测数据包。如果利用防火墙对数据包进行检测会导致网络效率大大降低,网络费用相应提高。
4.2 入侵检测系统及其局限性
入侵检测系统(IDS,Intrusion Detection System)是对防火墙有益的补充,作为一种积极主动的安全防御技术,入侵检测技术能够协助系统对付来自网络内部和外部的各种入侵攻击以及合法用户的误操作行为,尽可能的降低入侵对网络带来的危害。
4.3 防火墙与入侵检测联动防御系统设计
动态的网络需要动态的安全防御措施。防火墙与入侵检测联动防御系统的流程图如图 1所示。入侵检测系统积极主动的收集网络中的数据包及主机相关日志,实时监视网络状况,以发现网络中存在的入侵攻击行为,并把发现了的攻击行为传送给防火墙进行有效的拦截处理。
首先,防护环节实施安全策略,对网络系统实施保护;IDS检测监视网络的现行状况,发现网络中的异常状况,防火墙监督安全策略的有效实施。当发现问题时,检测转向响应环节,通过各种应急措施减小安全事故对系统带来的危害,并修正防护环节存在的缺陷,达到对防护环节的有利补充。整个系统通过不断的“防护——检测——响应——再防护”的循环往复,使得系统的安全性呈现一种螺旋上升的趋势。
典型的应用部署内容层包括Web类应用系统生成、处理、存储或传输的敏感信息内容,例如客户隐私信息与公司机密等。应用层特指Web应用程序,通常由HTML、Javascript、Java、ASP.NET、PHP等语言编写而成,运行于Web服务器或应用服务器环境,并向用户浏览器提供业务功能访问界面。设备层主要包含承载Web类应用系统的服务器、网络连接设备和存储设备。例如Web服务器、应用服务器、中间件、数据库服务器、操作系统、路由器与防火墙等。网络层包括Web类应用系统的网络架构与互联网出口设计。例如安全域划分、冗余设计、边界防护等。物理层包括维护Web类应用系统的机房物理安全与访问控制等。同时入侵系统所检测的结果在一定程度上为防火墙技术的安全管理作业提供了最可靠的依据,从而将防火墙技术的智能控制访问能力得到大幅度的提升。
五、结论
把防火墙安全技术跟入侵检测系统结合起来,实行防火墙安全技术不但能获取入侵检测系统反应出的网络安全数据,还可以将传统入侵系统检测不可以自主控制的难题给完美解决掉;由于防火墙技术与入侵检测技术有较强的互补性,实现防火墙与入侵检测的联动是目前较理想的网络安全防御措施。
入侵检测作为一种积极主动地安全防护技术,提供了对内部攻击、外部攻击和误操作的实时保护,在网络系统受到危害之前拦截和响应入侵。入侵检测系统面临的最主要挑战有两个:一个是虚警率太高,一个是检测速度太慢。现有的入侵检测系统还有其他技术上的致命弱点。因此,可以这样说,入侵检测产品仍具有较大的发展空间,从技术途径来讲,除了完善常规的、传统的技术(模式识别和完整性检测)外,应重点加强统计分析的相关技术研究。