深入了解“冰河” 虞东海 2000年 第46期 #1 “冰河”的原理   “冰河”是特洛伊木马的一种,因此它也具有特洛伊木马的一切特性。我们将“冰河”解压后可以得到3个主要文件:客户端G_client.exe 、服务端G_server.exe和说明文件readme.txt。   “冰河”的服务端G_server一旦运行,它首先会修改启动组,以便在每次启动时自动加载。这就是在注册表的HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run和Runservice键值中加上了“C:\windows\system\kernel32.exe”,然后将HKEY_CLASSES_ROOT\txtfile\shell\open\command下的键值由“C :\windows\notepad.exe %1”改为“C:\windows\system\sysexplr.exe %1”,同时在C:\windows\system目录下生成kernel32.exe 和sysexplr.exe 这两个文件。如果你对注册表的各项用途有点了解的话,就会知道第二项是将TXT文件改为用sysexplr.exe打开,而这个文件和kernel32.exe可以说是“青梅竹马”,互通有无。   当你想方设法删除了kernel32.exe这个文件,怡然自得的时候,它又神出鬼没地出现了,原因是当你打开TXT文档时,sysexplr.exe会重新生成kernel32.exe,你将还是在冰河的控制下。同时,kernel32.exe在系统每次关闭时,如果在启动组中没有kernel32.exe或是sysexplr.exe被删除,它自动将其恢复。   “冰河”的服务端一旦加载,它就自动驻留内存,在默认的情况下同时开放7626端口,如果你配置时设置了邮件通知的话,它采用SMTP将本机信息发送到指定邮箱。此时你的计算机的7626端口处于LISTENING状态,等待与客户端建立连接。   “冰河”的客户端可以用“自动搜索”来搜索指定子网内安装有“冰河”服务端的计算机。首先,它会用ICMP协议探测你的IP是否存在(类似Ping命令),如果探测不到,它将进行下一个IP的探测工作(这就是为什么搜索结果列表中IP地址不连续的原因)。如果该IP地址存在,它将扫描它的7626端口是否开放,如果不是开放的,该IP地址在搜索结果列表显示为error,如果该端口开放,这个IP就会被自动添加到主机列表中,这时,G_client 会向该主机发出连接信号,该主机中驻留内存的kernel32.exe收到数据后立即向客户端作出响应,在客户机收到响应的信号后,开放一个随机端口与主机的木马端口7626建立连接(这就是为什么一个客户端能控制多个主机的原因),这时一个木马连接就已经真正建立。 #1 “冰河”的卸载   “冰河”的作者黄鑫在readme.txt中早就说过:冰河1.2正式版以后的各版本都在客户端提供了彻底的卸载功能。此外还可以通过注册表清除(具体办法请见41期《电脑报》)。 #1 “冰河”及其它木马软件的防范   首先我想引用一下Microsoft的安全公报对木马软件的评价:“该软件其实要求你先安装Server端,然后再启动Client端进行控制,虽然要将它作为特洛伊木马安装到欲控制的机器上不算很困难,但毕竟这不是Win95/98的bug,而是利用机器使用者的疏忽而已。”我们暂不说特洛伊木马是否利用了Windows系统的bug,但是只要我们保持警惕,不让Server端有机会进入我们的机器,也就不会被控制了,下面是几点建议:   1.从网上下载软件时应该注意:尽量选择一些有名的站点下载,不要去一些小站点。   2.如果上网的话,最好给自己加一个实时监控的杀毒程序,最新的杀毒软件一般都能查杀木马,比如我所使用的金山毒霸就能查杀冰河。   3.不要在网上相信一些初认识的人,一些别有用心的人在网上装作“大虾”,非常“善意”地帮助人,给你发各种各样的资料或是软件,往往在“善意”的背后,是其险恶的面孔,等你中招后就后悔莫及了!还有一些人在网上扮成MM(喜欢同MM聊天的网友可要注意了!),给你发一些东西(最常见的就是伪装成photo.gif.exe的Server端),当你正在想目睹一下“她”的风采时,嘿嘿……   4.对带有附件的E-mail,特别是陌生人发给你的E-mail,要保持警惕,这方面相信无需我多说吧! 事物都有两面性,当我看到好多人将“臭名昭著”等词语用在“冰河”上时,心里总觉得不是味道。其实我们不必为“冰河”究竟是一个厉害的黑客工具,还是优秀的远程管理系统而争论不休,实际上这就像讨论一把小刀究竟是工具还是凶器一样,问题的关键并不在刀子本身,而在于使用者用它来做什么。   以上纯属个人观点,如有不当之处,欢迎大家批评指正(E-mail: bennial@263.net)!