| | | | | | | [文章信息] | | | 作者: | 孙喜明 | | 时间: | 2004-11-14 | | 出处: | 中国操作系统支持 | | 责任编辑: | 方舟 | |
| [文章导读] | | | 说起VxD技术,很多接触电脑的人都会感到陌生,不过提起CIH病毒,我相信您一定不再摇头 | |
| |
|
| | | |
|
|
|
|
|
说起VxD技术,很多接触电脑的人都会感到陌生,不过提起CIH病毒,我相信您一定不再摇头。
有过一定Windows编程经验的人可能听说过VxD这个词。80386的保护模式给了我们非常多的“保护”,对于一个不懈地追求自由的人来说,“镀金的笼子也是笼子”,翻遍Windows编程的书籍,也许最终只找到这样一扇通向自由的门:试一试VxD。
VxD是什么?为什么CIH会如此猖獗?
CIH运行在Ring 0,挂接IFS(Installable File System)服务,截获File Opening操作,然后把自己“传染”到别的PE格式的文件中,如果到了该发作的时间,它就攻击主板的Flash Memory。
CIH之所以能破坏硬件资源(通过攻击主板的Flash Memory,达到破坏硬件的目的),正是因为它利用了VxD技术。对于一般的运行于Ring 3的Windows应用程序来说,想破坏主板的Flash Memory是不可能的,因为这是80386保护模式对于代码权限的盘查所不允许的,其结果顶多是引起操作系统异常,也就是在Windows中经常出现的、令用户心跳加速的、蓝底白
VxD = Virtual “something" Device,这里的x代表Something。比如说VKD代表Virtual Keyboard Device(键盘驱动),VPICD 代表 Virtual Programmable Interrupt Device(可编程中断控制器驱动)。VxD是Windows 3.1、Windows 95的驱动程序模型(Windows 98也支持VxD)。
在很多人的印象中,VxD是与硬件设备打交道的,对于软件来说没有太大的作用,其理由之一是:用来开发VxD的DDK一般来说都分发给硬件开发商,对于搞软件开发的人来? SDK才是看家本领,而SDK中对于VxD却是言及甚少。这种想法可是大错而特错了。
由于VxD运行在系统的Ring 0级,拥有与操作系统同等的级别,所以,VxD可以最大程度地帮助我们走出80386保护模式强加给我们的“镀金的笼子”。我们就拿最近轰动一时的CIH病毒来说一说VxD这柄利剑的强大。字的“General Protection Fault”,在这里,我们该感谢那个“镀金的笼子”,至少它使我们免受邻居家那个只学过Turbo C编程的小孩的搔扰。
|
|
|
|
|
|
|
|
|