与一个“三无”后门过招
以前听说过Byshell063。这个后门号称“三无”——无进程、无DLL文件、无硬盘文件。
听起来比较NB! 简直成了“幽灵”了。
注:卡巴斯基2006年1月15日病毒库依然不报这个byshell063。但报byshell067为后门——Backdoor.Win32.Byshell.a。有点儿晕——这个063比067问世早多了!!今天拿到这个后门,将其服务端装在自己的系统中,看看它有多NB。
不过,事先得采取点儿措施(见图1),为的是能抓住这个“幽灵”的蛛丝马迹。一旦失手,还有系统GHOST备份呢,不怕。具体过招过程如下:
1、安装后门,然后如图1设置好TPF中“file protection”的“expert rules”。重启系统。
重启后,发现了这个幽灵的踪迹:
图2:后门添加的注册表项。
图3:后门创建的文件。
自己动手将这些垃圾统统删除。删除前,须先结束spoolsv.exe进程(此后门插入这个进程)。
2、然后,再次安装这个后门。去掉TPF中“file protection”的“expert rules”的那条规则,再重启系统,看看会怎么样。
重启后,果然什么也看不见了(图4)。
估计是在重启系统过程中,后门程序抢先完成加载或进程注入后,自己将后门文件和注册表项一并删除了。确实NB!!
3、咋办呢?连注册表信息都找不到,这后门咋删呢?用上面的第1招,应该可以搞掂。但如果没有TPF(或不熟悉TPF用法)的用户咋办呢?先用第1招杀死它!然后,再上网慢慢搜寻相关信息吧。
还真找到了——Byshell063作者自己分析讲解这个后门时带出来的“秘密”。清除此后门的办法,说来简单得很——硬关机(就是拔掉计算机电源)即可。奥妙在于:这个后门虽然NB,但也有自己的软肋。下面是此后门作者的原话:
【下一个问题是启动项和文件。Ntboot.exe是后门的注射器,将自己作为服务启动,我们决不能让管理员发现服务键值。怎么办?这个也是农民前辈提出的思想:先删除所有后门文件和服务,设定一个关机通知和一个一键关机钩子,在即将关机的时候写入文件和服务项。同样的,一开机这个服务只要启动了就会先把自己删除。这样就实现了无文件和无启动项。管理员用注册表对比将不能发现异常,也无处寻找我们的后门文件。 与Hxdef的Hook文件注册表的Native API相比,这种办法的好处是根本就不存在文件,也不会有什么Ring0的Rootkit Detector发现被Hook API隐藏的文件和注册表项。坏处是如果对方直接拔电源关机我们就“安息”了。】
小结:
一番折腾后,有点感触:
1、后门、木马等东东越来越狡猾。但就此后门而言,上面的第一种方法(用TPF让幽灵显身)是奏效的。用好TPF,是一个漫长的渐进过程。我用TPF将近1年了,今天才冒出这么个“馊招”。
2、狡猾的东东,也有它的弱点。只不过,我没想到致它于死地的它的弱点是——“硬关机”。呵呵!看来还要好好向黑客们学习啊!
3、其实,只要有进程注入监视工具(如SSM、TPF等),发现并找到被注入的进程,结束之。然后,重启系统,也可搞掂。这个后门默认注入spoolsv.exe。但黑客可以通过修改程序,使之注入其它系统进程。
图1