标题:
〖病毒简介〗病毒原理*之Wininit*
[打印本页]
作者:
凌波微步
时间:
2009-12-14 08:48
标题:
〖病毒简介〗病毒原理*之Wininit*
用过Windows 9x的人都见过如下的提示信息:
Please wait while Setup updates your configuration files.
网络安全
This may take a few minutes……
这是安装完某个软件或者硬件的驱动程序,应安装程序的要求重新启动Windows后的正常现象,绝不会把它与病毒联系起来,本文将用事实告诫你,如果你的机器启动时无缘无故地出现上述信息,就要赶紧去找最新的杀毒软件了!
黑客
这时Windows在干什么呢?实际上它在执行Wininit.ini给出的指令,Wininit.ini是一个鲜为人知的文件,主要用于删除、更名和更新在Windows运行时不能被施以这些操作的文件,它存在的时间很短,所以显得有点神秘。
网络安全
一、Wininit文件工作机
众所周知,在Windows中,一个可执行文件如果正在运行或某个库文件(*.dll、*.vxd、*.sys等)正在被打开使用,则不能被改写或删除。例如,你不可能在资源管理器中删除Windowsexplorer.exe,而在Windows的GDI界面下,有一些文件一直处于这种状态下,除explorer.exe外,还有显示驱动程序库文件,文件子系统库文件等,如果我们要对这些文件进行升级,改动,就必须在Windows保护模式核心启动前进行,于是Windows就提供了基于Wininit.ini文件的一个机制来完成这个任务,这个机制是,要删除或改写这类文件的应用程序按一定的格式把命令写入 Wininit.ini。Windows在重启时,将在Windows目录下搜索Wininit.ini文件,如果找到,就遵照该文件指令删除、改名、更新文件,完成任务后,将删除Wininit.ini文件本身,继续启动过程。所以Wininit.ini文件中的指令只会被执行一次,列目录时也通常没有它的踪影。
Wininit.ini文件的格式简述如下:
Windows 95 Resource Kit提到Wininit.ini文件有三个可能的段,但只叙述了“rename”段的用法,虽然名为“rename”,却可实现删除、改名、更新文件的功能。其格式为:
网络安全
[rename]
……
filename1=filename2
……
行“filename1=filename2”相当于依次执行“copy filename2 filename1”及“del filename2”这两个DOS命令。
启动时,Windows将用filename2覆盖filename1,再删除filename2,这就实现了用filename2与更新filename1的目的,如果filename1不存在,实际结果是将filename2改名为filename1;如果要删除文件,可令filename1为nul,例如:
网络安全
[rename]
……
nul=filename2
……
将删除filename2。
以上文件名都必须包含完整路径,注意:由于Wininit.ini文件的处理是在Windows文件系统调入前,所以不支持长文件名。
网络安全
Wininit.ini的应用很多,除了经常在软硬件的安装程序中用到外,还有软硬件的卸载程序中用到,比如:假设你要为自己的软件编写一个卸载程序,这个卸载程序本身是不可能被自己删除的,因为它试图删除自身时,自身却正在运行。为了清除卸载程序本身,你就得借助于Wininit.ini文件。顺便提一句,在安装Windows的最后阶段,就是利用Wininit.ini文件来清除和更名被安装程序SETUP自身使用的文件。
二、该技术在新的Winodws病毒中流行
[iduba_page]微机操作平台已经成了从DOS平台到Windows平台转移,不幸的是,大量出现的Windows 9x病毒标志着病毒也同样完成了这个转移。
网络安全
Windows病毒在感染文件时,也碰到了这样一个问题,某些文件,因为系统正在使用,不能被改写和 感染,早期的Windows病毒如CIH病毒采用VXD技术来解决这个问题,这易造成系统不稳定,后期的病毒大多采用Windows提供的标准方法——Wininit.ini文件来解决这个问题,比如以下几种新出现的Windows病毒。
网络安全
1、Win32.Kriz
该病毒又叫圣诞节病毒,内存驻留型,具有多形性且极端危险,在12月25日发作时将改写CMOS,覆盖所有驱动器上的所有文件,然后用CIH病毒中的同样程序破坏主板上Flash BIOS,该病毒感染*.EXE(PE格式)和*.scr文件,同时为了监控所有文件操作,它感染Kernel32.dll,接管文件复制、打开、移动等文件存取函数,由于kernel32.dll文件在Windows运行时只能以只读方式打开,为感染它,该病毒将它复制一份,名为KRIZEO.TT6,然后感染复制品KRIZEO,TT6,写Rename指令到Wininit.ini文件中,下次机器启动时,KRIZEO.TT6将替代原来的Kernel32.dll完成感染。
网络安全
2、Supp1.A蠕虫
这是一个Word宏蠕虫,通过在发出的E-mail中插入一个特洛伊文档作为附件传播,当被打开时病毒拷贝文档到Anthrax.ini,把要展开的数据写到文件dll.lzh,并解压为dll.tmp,以上文件都放在Windows目录下。下一步这个蠕虫创建一个具有如下内容的Wininit.ini文件。
黑客
[rename]
nul=c:windowsdll.lzh
c:windowssystemwsock33.dll=c:windowssystemwsock32.dll
网络安全
c:windowssystemwsock32.dll=c:windowsdll.tmp
网络安全
第一行是删除dll.lzh,第二行是把原wsock32.dll改名为wsock32.dll。下一步启动时,这些指令将生效。这样wsock32.dll就被感染了。利用它,蠕虫就可监控外发邮件,一旦发现外发邮件,蠕虫就自动把特洛伊木马文档作为附件加到该邮件中进行传播,感染7天后,该病毒将把硬盘上所有以DOC、XLS、TXT、RTF、ZIP、ARJ、RAR为扩展名的文件长度置为0,从而破坏所有的数据文件。
3、Heathen病毒
多平台病毒,感染Word文档和P
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2