网络安全 频道

网管手记:一次与蠕虫病毒作战的经验

一次艰难的“排毒”经历,炼就了睿智的头脑和实战的能力,再次与病毒相遇,道高一丈的绝技足以让它粉身粹骨。

  正是星期一的早晨,在单位的计算机机房里,我和同事们都在忙着各自的工作,一切都很正常。

  连不上互联网?

  “互联网怎么连不上了?”小冯突然冒出一句话。我立刻警觉起来,立即打开Windows操作系统的命令窗口,运行Ping命令,测试局域网网关的连通性。

  运行结果显示“请求超时”。这说明,为这个局域网中其他计算机转发数据的网关已经无法访问了,所以造成局域网内的计算机用户无法访问互联网。

  与此同时,其他同事也都反映上不了网。“难道是网关出了问题?”我一边暗自思索,一边走进装有服务器和网络设备的主机室。

  我们局域网里的网关是由一台Cisco PIX防火墙通过NAT(Network Address Translation,即网络地址转换)功能实现对互联网的访问。自从投入运行以来一直稳定地工作,此前也从来没有发生过问题。

  我走到装有该防火墙的设备机柜前,检查Cisco PIX 防火墙的运行指示灯,发现都处于正常状态。出于慎重考虑,我还是对它进行了重启。等防火墙重启完毕,运行指示灯显示系统已经正常运行后,我才返回到机房。

  走到自己的计算机屏幕前,检查这段时间里Ping命令的输出结果,发现在此期间Ping命令向网关发出的ICMP回应请求并非完全超时,系统不定期地从网关得到了回应。

  注意到这一点,我又观察了一段时间,确定网络确实是时断时续,每分钟大约有2、3秒钟可以连接上互联网。

  与此同时,使用我们单位互联网出口的其他单位也开始陆续打来电话,反映网络运行出现时断时续现象。

  追忆去年“五一”遭遇

  这一现象不禁让我回忆起去年“五一”长假期间爆发的震荡波蠕虫病毒事件。

  网络时断时续

  当时就发生了网络时断时续、用户无法正常访问的现象。造成这一现象的原因就是震荡波蠕虫病毒在感染计算机后同时开启128个扫描线程,以本地IP地址为基础,取随机IP地址,疯狂地试探连接445端口,试图利用Windows操作系统LSASS 中存在的一个缓冲区溢出漏洞进行攻击。

  一旦攻击成功,会导致对方计算机感染此病毒,并进行下一轮的传播。即便攻击失败,也会造成对方计算机缓冲区溢出,以及对方计算机运行程序引发的非法操作,还有系统异常等。大量的扫描和攻击使得局域网内充斥着无用的数据流量,侵占网络带宽,从而导致网络阻塞甚至瘫痪。

  此外,该病毒还在受感染的计算机本地开辟后门,监听TCP端口5554,并且作为FTP服务器等待远程控制命令,以FTP的形式提供病毒自身文件的传送。黑客可以通过这个端口偷窃用户机器的文件、账号、密码和其他信息。

  病毒交叉感染

  “五一”长假过后,单位网络里的计算机陆续中毒,由于无法迅速定位染毒计算机,我们只能被动地等待用户的求助电话,这样就无法迅速响应、做到对染毒计算机的尽早隔离,结果造成了计算机交叉感染,查杀完病毒的计算机很快又被感染。

  排毒很艰辛

  最后,我和同事们不得不对所有联网的计算机采取逐台排查的方法。

  如图所示,我们的网络分布在三座办公楼里面,并且涉及到好几个不同部门,工作起来需要协调的事情很多。我分别在三座办公楼的布线间里将全部网线都拔下来,然后再逐一插回去,并观察一段时间,以分辨是否是已经感染病毒的计算机。

  由于网络布线非常不规范:没有使用配线架,网线的接头处也没有标签指明具体的房间号。这样,即便是找到了染毒计算机所在的交换机端口,由于端口下连接多台计算机,无法立即确定哪台计算机感染了病毒。

  于是,为了找出染毒的计算机,我还得一个房间一个房间地去查,真像大海里捞针呀!好在,经同事们的帮助,大家共同努力把染毒计算机揪了出来,但长耗时、低效率的查杀效果一直让我耿耿于怀。

“擒贼”先“擒王”

  由于上次震荡波病毒发作后,全局域网的计算机都已经查杀过病毒,并且打上了相关的系统补丁,防范震荡波病毒可谓万无一失了。

  那么,这次“连不上互联网”又是怎么回事儿?是不是震荡波病毒的新变种在作怪,或是其他类似的蠕虫病毒在兴风作浪?这一次,我该如何应对?

  有了上一次的经验,我打算来个“擒贼先擒王”。

  找不到蛛丝蚂迹

  首先要尽快找到那台已经被感染的计算机,并把它隔离起来,防止疫情扩散。可是,如何快速地找到这台染毒计算机呢?

  去年对全网计算机进行费时、费力地逐一排查,让我进行了深刻地反思。这一次,为了实现高效查杀病毒的目的,我打算借助Linux操作系统中的TCPDUMP程序——这是一款非常优秀的开放源代码网络监听与网络协议分析软件,它的基本功能就是截获网络上的数据包。

  虽然我们的局域网已经是交换网络,也就是说在没有开启交换机的特殊功能以前,像TCPDUMP这样的网络监听软件是无法监听到网络上的全部流量,而只能监听到以该软件所运行的计算机IP地址为目的地址的单播数据包以及组播、广播数据包。

  我是这样想的,由于震荡波类的蠕虫病毒特定的传播机理,它必然会造成局域网中网络数据流量的异常,分析这些异常,我应该能够找到关于这类蠕虫病毒作案的蛛丝马迹。

  运行TCPDUMP程序后,我目不转睛地盯着计算机屏幕上不断闪过的信息,并没有发现什么令人激动的、在我意料之中的现象。

  真的“网络好了”?

  也就在这时,机房里有人喊到“网络好了!”我立刻又开启了一个终端窗口用Ping命令,测试网关的连通性,果然都返回了应答包,反应时间也非常之快,在1毫秒之内。真是奇怪!

  我又仔细检查了网络,真的一切恢复了正常。我猜,很可能是染毒计算机已经被关闭。由于我没有接到求助电话,所以染毒的用户一定还不知道自己的计算机已经感染了病毒,他大概是看到网络不通,就把计算机关闭了。

  此时,已临近午餐时间,办公楼里面的工作人员开始陆续离开办公室,到食堂吃饭。看来,只有等下午再查了。

  “守株待兔”

  下午一点整,我和同事电话通知联网单位,请求他们配合解决网络问题,把所有联网计算机都打开,全部上线。我们则在机房里启动TCPDUMP程序,来一个“守株待兔”!

  随着联网机器的逐渐增加,网络上的数据流量开始增大。我紧张地注视着由TCPDUMP程序所捕获的网络信息在我面前一屏屏地闪过。

  突然,我发现了一个破绽:有一台计算机不断地向网络发送大量的ARP地址解析协议包,其中包含的IP地址并不是我通过DHCP服务器分配的合法IP地址。终于找到了!

  可是找到IP地址并不能确定计算机。因为IP地址是动态分配的,计算机每次启动所得到的IP地址并不一定是相同的。除了向互联网提供网络服务服务器以外,并没有为局域网内的个人计算机配置域名,所以只有找到计算机的NetBios名才能了解到底是那台计算机。

  


  出事地点(右一为染毒计算机及用户了)

  


  网络接头没标签,不利于查找毒源

 “兔子”逮着了

  想到联网计算机的操作系统有Windows 98 SE、Windows ME、Windows 2000以及Windows XP,都缺省支持NetBios协议,于是,我使用NBTSTAT命令得到感染病毒的计算机的NetBios计算机名。

  真是幸运!该计算机名和工作组名清楚地标识出染毒计算机所处的处室和部门。于是我迅速赶往目的地—与我们单位处于同一座办公楼里的某部门。

  接下来的工作就轻车熟路了:立即拔掉这台计算机的网线,使其与网络隔离,然后对该计算机进行安全检查。

  该计算机一经隔离,网络运行便恢复了正常。看来由于我们的反应及时,病毒并没有在网络中蔓延。

  接着,我使用最新版的防毒软件对那台计算机进行查杀,果然查出了与震荡波病毒类似的木马型网络蠕虫病毒。

反思

  安全还得人来管

  等到一切处理完毕,也到了快要下班的时间。返回到办公室以后,我开始对这一天里发生的事情进行梳理和总结。

  病毒发作原因

  在处理染毒计算机的过程中,我发现,虽然该计算机已经安装了杀毒软件,但是版本却相当旧,显然已经很久没有进行升级。

  询问用户得知,他在一个多月之前就发现杀毒软件无法升级,曾打电话咨询过此事,但没有得到相关人员的积极响应;再加上此事件并没有妨碍日常办公,也就没太在意。

  从今天早上开始,计算机系统的运行突然慢得无法忍受,并且上不了互联网。当听到网络发生故障后,他还以为自己的计算机是受网络的影响所致。于是就将计算机关闭。在下午得到通知后,才又将计算机开启。

  三项有利措施

  而仔细分析这次病毒爆发之所以没有蔓延的原因,除了中毒计算机上网时间较短、没有充足的时间来进行传播等因素外,自从上次震荡波病毒爆发后,我们采取的三项安全措施也起到了关键的作用。

  这三项安全措施是:局域网内所有具有操作系统自动更新功能的计算机都开启自动更新功能;所有计算机都统一安装杀毒软件;对于Windows XP系统的计算机开启系统自带的Internet连接防火墙(ICF)。

  事实表明,自动更新、安装杀毒软件、启用防火墙这三项安全措施使得网络抵御病毒攻击的能力大为增强,没有使病毒在短时间内迅速蔓延。

  不可回避的教训

  可是为什么这小小的蠕虫病毒能够一再地在我们的局域网里兴风作浪?难道面对病毒我们只能做被动的防范和事后的补救?这次事件让我得到了以下一些教训:

  1.计算机个人用户的安全意识仍然十分淡漠;

  2.技术支持部门对用户的响应不及时,导致丧失将问题消灭在萌芽状态的宝贵时机;

  3.不具备网络管理功能的二层交换机在发生网络故障时,无法为网络管理人员提供必要的网络调试功能;

  4.楼宇的综合布线系统陈旧老化,不符合规范。在这次事件中,因为受感染的计算机的名字直接指明了所处位置,使得这一问题才没有完全暴露出来。

  本溪市信息港管理中心技术主管 崔连吉

  这样加强安全防范

  经过这次教训,我们应当如何对网络和系统进行适当的改进?经过认真总结经验,我认为应当从以下几个方面来进行。

  在人的因素方面

  广大计算机用户的安全意识有待进一步提高。在日常的操作过程中,应当具有自主的安全防范意识,遇到不明问题或可疑现象,应当及时、主动与网络管理部门取得联系。

  在软件配置方面

  对局域网内所有计算机进行有意义的命名,将IP地址与该计算机的MAC地址进行绑定。试想,如果这次染毒计算机的名称和工作组名都是没有意义的名字,那么定位染毒计算机的过程将大费周折,搞不好还得像去年应对震荡波病毒那样,继续搞“海里捞针”战术。

  在网络硬件方面

  应当采用具有较强网络管理功能的三层交换机作为网络的核心交换机,使网络从二层交换机级联的平面结构升级为具有优越可管理性的分层交换结构。

  在楼宇综合布线方面

  由于资金等因素的制约,目前无法对已有的网络布线进行规范化改造,我们可以通过在网络配线间为每个交换机端口的网线添加标签以指明其所连接的房间和位置。这将在短时间内、在一定程度上减少网络管理人员排查网络故障时的不便。

  但从长远考虑,应当在适当的时间对本网络的布线进彻底的改造,使其符合综合布线标准。

  在制度方面

  我们应当采取一些必要的措施,比如要求局域网内的所有计算机用户定期升级杀毒软件,并指定专人进行检查;在技术支持部门进一步完善对用户求助的响应机制等。

0
相关文章