常见的病毒自删除方式是通过批处理来完成的,首先病毒会创建一个批处理文件,然后病毒调用批处理文件来删除自己,最后批处理再将自己也删除掉。 而本文章介绍的方式不是以批处理来完成的,这个方式是危险漫步通过分析一个病毒样本时得来的方式,本着共享的精神将该方式写出来,供大家一起学习与参考。 我们来介绍一下这种自删除的思路。 第二,病毒第一次启动将自己拷贝到其他目录后,将要完成自删除的动作。那么病毒如何完成自删除的动作呢?病毒先得到自己所在的目录及文件名,比如是D:\muma.exe,然后病毒在将自己拷贝到系统目录后,会运行系统目录下的病毒的副本,并将它当前的位置及文件名以参数的方式传递给系统目录下的病毒。 第三,系统目录下的病毒被原病毒启动,并且得到了原病毒的位置。这样,系统目录下的病毒副本,根据原病毒提供的位置和病毒的文件名,将原病毒进程结束掉,并将原病毒删除掉。既然我们有了病毒的流程,那么我们就来实现其代码。 我们要先完成几个通用的函数,从进程名得到进程的ID,调整进程权限到调试权限,结束某个进程。这三个函数是我们要用到的函数,我们先完成它们。代码如下: |