危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2306 浏览20612779

另类病毒的自删除方法

常见的病毒自删除方法是通过批处理来完成的,首先病毒会创建一个批处理文件,然后病毒调用批处理文件来删除自己,最后批处理再将自己也删除掉。而本文章介绍的方法不是以批处理来完成的,这个方法是危险漫步通过分析一个病毒样本时得来的方法,本着共享的精神将该方法写出来,供大家一起学习与参考。

我们来介绍一下这种自删除的思路。

首先,病毒在我们的磁盘上第一次启动时,会将自身拷贝到系统目录下。而病毒的当前位置通常不会在系统目录下。比如说,我们下载了一个软件到D盘中,这个软件的名字为rnuma.exe,运行这个程序后它会将自身拷贝一份到系统目录下叫backdoor.exe。病毒如何判断自己是否是第一次运行呢,它的依据是自己所在的位置,如果病毒在系统目录下则认为自己不是第一次运行,否则就视为自己是第一次运行。

第二,病毒第一次启动将自己拷贝到其他目录后,将要完成自删除的动作。那么病毒如何完成自删除的动作呢?病毒先得到自己所在的目录及文件名,比如是D:\muma.exe,然后病毒在将自己拷贝到系统目录后,会运行系统目录下的病毒的副本,并将它当前的位置及文件名以参数的方式传递给系统目录下的病毒。

第三,系统目录下的病毒被原病毒启动,并且得到了原病毒的位置。这样,系统目录下的病毒副本,根据原病毒提供的位置和病毒的文件名,将原病毒进程结束掉,并将原病毒删除掉。既然我们有了病毒的流程,那么我们就来实现其代码。

我们要先完成几个通用的函数,从进程名得到进程的ID,调整进程权限到调试权限,结束某个进程。这三个函数是我们要用到的函数,我们先完成它们。

在代码中我们给出了详细的流程,而且在介绍代码之前,我们也有详细的流程描述。想必对于这种自删除的方法都已经掌握了。虽然这种方法没有太多的技术性,关键是它的思路比较好。启动一个程序时,可以为其传递参数,从而控制进程在运行时的动作,而参数的来源,也来源于自己的上一次运行。希望本文能给大家带来更多的思路。

相关推荐