网络通信 频道

从SQl Slammer蠕虫看GAP技术的防御机制

  【IT168报道】前不久,SQL Slammer 病毒如摧枯拉朽之式袭击了互联网,造成了约12亿美元的损失,在业内引起震惊。蠕虫事件给我们的网络安全提出了新的警示,过去几年政府、企业等不断斥巨资投向安全预算,然而网络并没有得到期望的"平安"。


  SQL Slammer 虽然攻势凌厉,但并非没有遇到"克星"。事实上这次采用基于GAP技术的天行安全隔离网闸(Topwalk-GAP)做防护的用户(政府内网、公安系统等)便没有受到蠕虫风暴的影响。面对攻击,我们是选择"亡羊补牢"的补救,还是"未雨绸缪"的预防呢?

SQL Slammer蠕虫的"攻击术"

  首先浅析SQL Slammer蠕虫的机理,该蠕虫的代码非常精巧,只有376个字节。它的原理是首先感染网络中的一台安装了微软SQL server 2000的服务器和MSDE 2000的客户端,然后利用的未打SP3补丁的微软SQL server2000的缓冲区溢出漏洞,成功后以随机IP地址通过UDP/1434端口对外大量送发数据包,占用大量系统资源和网络带宽,形成UDP Flood,感染了该蠕虫的网络性能会极度下降。一个百兆网络内只要有一两台机器感染该蠕虫就会导致整个网络访问阻塞。

#$[*16748.jpg*#a*#0*#0*#center*]$#


入侵检测和防火墙的防御术

  入侵检测可以通过攻击特征规则库比对来辨识攻击行为,即基于"黑名单"的检测机制。由于SQL Slammer是初次亮相(即未知的病毒),规则库无此攻击特征的资料,所以很难侦测出该病毒。部署入侵检测产品的用户可以通过从厂商获得的升级包进行安装,通过更新规则库来抵御SQL Slammer攻击。

  美国一家商业周刊曾对防火墙客户有一次投票调查,结果前三位重要特性是透明特性,性能和方便性,而不是安全性。通常情况下防火墙是不对UPD/1434端口堵塞的,对SQL Slammer的突然攻击形同透明。当用户的局域网大量感染蠕虫,在防火墙上设置阻塞UDP/1434端口的规则后会导致网络设备CPU资源占用剧增的现象,在这种情况下,可先拔掉被感染机器的网线,再设定网络设备的过滤规则,待内部所有系统都重新启动并安装补丁之后再插上网线。

GAP产品(隔离网闸)的防御之术

  GAP产品与防火墙在立足思想上有所不同,用一句话说就是防火墙的思路是在保障互联互通的前提下,尽可能安全,而GAP产品的思路是在确保安全的前提下,实现互联互通。例如用户提出,首先确保我的网络安全,同时保证正常的对外通信和业务应用。

  基于这样的思路,我们以国内GAP代表产品"天行安全隔离网闸(Topwalk-GAP)"分析,该产品是通过内/外部处理单元、专用隔离硬件来实现了内外之间物理链路层的断开,同时专用隔离硬件完成基于"切换"机制的数据传输功能。即必须确保内部安全的前提下并支持内外数据库之间的数据同步、邮件和文件交换等,已满足了用户内外信息互通需求。假设外网感染SQL蠕虫病毒,并试图穿过网闸进入内网。

#$[*16749.jpg*#a*#0*#0*#center*]$#

  首先是隔离网闸断开了内外网间TCP/IP协议通话,当病毒感染外部数据库客户端或服务器时,对网络大量发送数据包,造成外网性能下降。由于它利用的是UDP/1434端口传播,本身基于TCP/IP协议,这种请求无法跨过网闸进入内网SQL Server 服务器和客户端,这样内外网之间不存在TCP/IP协议会话,内网服务器就不会被感染。

  其次是该产品在体系结构的设计上,采用"白名单"访问控制策略。隔离网闸需要传送的数据是都由内网合法用户发出请求来定义,这是一种严格的安全策略。网闸内部处理单元采用了访问控制、身份验证、数字证书等机制确保内部用户请求的真实性和合法性,这样就有效抵御了"SQL Slammer蠕虫"的未知攻击。

  最后是严格的数据P&P(Pull and Push)传输技术。外部处理单元对外部不提供任何服务,不接受外来任何请求,网闸根据内网用户的请求从外部数据库Pull(抽取)数据,然后通过协议转化、加密技术等将数据存在隔离硬件进行扫描,最终将安全数据Push 到内网数据库服务器。这种机制可以避免来自SQL Slammer蠕虫的主动数据传播方式。

  安全隔离网闸是防火墙、IDS等安全产品的合理补充,它在确保安全的同时,不可避免带来互通性和开放性的损失。从国内外GAP技术应用来看,目前用户主要集中在把网络安全被提到首要地位的政府、金融证券、军队等部门。天行网安最后建议:正确全面评估网络的安全需求与风险,寻求安全与方便杠杆的平衡点,最终选择适当的安全策略和防护措施。

0
相关文章