一、U盘病毒和autorun.inf文件
目前U盘病毒的最大特征是利用autorun.inf这个自动运行文件来侵入,autorun.inf相当于一个传染途径,经过这个途径入侵的病毒,理论上可以是“任何”病毒。因此大家可以在网上发现,当搜索到autorun.inf之后,附带的病毒往往有不同的名称。
autorun.inf文件本身是一个常规且合理的文件和技术。在Windows XP以及之前的Windows 98等系统中,需要让光盘、U盘插入到机器时自动运行的话,就要靠autorun.inf。它是保存在驱动器根目录下的一个隐藏的系统文件,里面包含一些简单的命令,例如,告诉系统这个新插入的光盘或硬件盘符图标改成某个路径下的icon,指定系统自动启动什么程序等。
因此,在autorun.inf文件中,既可以放置正常的启动程序,如经常使用的各种教学光盘,使其一插入电脑就自动安装或自动演示,也可以放置任何可能的恶意内容。病毒作者或传播者就是利用了这一点,让移动设备在用户系统完全不知情的情况下,“自动”执行某个命令或恶意程序。
借助于autorun.inf文件,病毒有了启动方法,病毒作者还需要将病毒主体放进U盘里才能让其运行。如何将病毒隐藏在一般情况下看不到的地方呢?一种是假回收站方式:通常在U盘中建立一个名为“Recycler”的文件夹,然后把病毒藏在里面很深的目录中,一般人以为这就是回收站了,而事实上回收站的名称是“Recycled”。另一种是假冒杀毒软件方式:病毒在U盘中改名为“RavMonE.exe”,让人以为是瑞星杀毒软件的程序。
二、U盘病毒程序的设计与实现
1.病毒程序功能
在VC6.0的环境下,编程实现一个简单的U盘病毒程序U_security2.exe。该病毒程序的主要功能是:第一次运行U_security2程序后,如果在系统路径下没有aaaaa.exe,则在系统路径下每5秒钟创建这个进程(aaaaa.exe其实是U_security2.exe的拷贝),不断地占用机器的内存。同时修改注册表,使其在系统启动时自运行。同时如果U盘里没有autorun.inf或bbbbb.exe,则在U盘里创建,其中bbbbb.exe也是U_security2.exe的拷贝,autorun.inf则用来激活bbbbb.exe。在Windows任务管理器的进程表里会发现并没有U_security2.exe这个进程,而是出现了名为aaaaa.exe的进程,这是因为程序中的CopyToSysAndSet(HWND hwnd)函数里使用SendMessage(hwnd,WM_CLOSE,0,0)把进程U_security2结束了。
然后,当这个被感染了病毒(bbbbb.exe)的U盘插入其他机器时,双击U盘会打不开,而且每双击一次U盘,就会每隔5秒钟创建一个进程aaaaa.exe不停地占用系统内存,使得系统运行速度越来越慢。只有单击“打开”选项才能打开该U盘,并且弹出U盘时系统会提示“无法停止通用卷设备”,原因在于,autorun.inf调用并启动潜伏在U盘中的bbbbb.exe进程,即相当于U盘中有进程在运行,故只有在进程表中找到相应进程并删除以后,才可以弹出U盘。
|