而在我们分析网页病毒前,先叫我们知道促使病毒形成的罪魁祸首:Windows 脚本宿主 和Microsoft Internet Explorer漏洞利用。
二、Windows 脚本宿主,Internet Explorer漏洞以及相关
WSH,是“Windows Scripting Host”的缩略形式,其通用的中文译名为“Windows 脚本宿主”。对于这个较为抽象的名词,我们可以先作这样一个笼统的理解:它是内嵌于 Windows 操作系统中的脚本语言工作环境。
Windows Scripting Host 这个概念最早出现于 Windows 98 操作系统。大家一定还记得 MS-Dos 下的批处理命令,它曾有效地简化了我们的工作、带给我们方便,这一点就有点类似于如今大行其道的脚本语言。但就算我们把批处理命令看成是一种脚本语言,那它也是 98 版之前的 Windows 操作系统所唯一支持的“脚本语言”。而此后随着各种真正的脚本语言不断出现,批处理命令显然就很是力不从心了。面临这一危机,微软在研发 Windows 98 时,为了实现多类脚本文件在 Windows 界面或 Dos 命令提示符下的直接运行,就在系统内植入了一个基于 32 位 Windows 平台、并独立于语言的脚本运行环境,并将其命名为“Windows Scripting Host”。WSH 架构于 ActiveX 之上,通过充当 ActiveX 的脚本引擎控制器,WSH 为 Windows 用户充分利用威力强大的脚本指令语言扫清了障碍。
促使这一问题发生的还有问题多多Internet Explorer 的自身漏洞。比如:“错误的MIME?Multipurpose Internet Mail Extentions,多用途的网际邮件扩充协议头”,“Microsoft Internet Explorer浏览器弹出窗口Object类型验证漏洞”。而以下介绍的几个组件存在的问题或漏洞或是在安全问题上的过滤不严密问题,却又造成了“网页危机”的另外一个重要因素。
Java语言可以编写两种类型的程序:应用程序(Application)和小应用程序(Applet)。应用程序是可以独立运行的程序,而Applet不能独立运行,需要嵌入HTML文件,遵循一套约定,在支持Java的浏览器(如:Netscape Navigator 2.02版本以上,HotJava,Microsoft Internet Explorer 3.0版本以上)运行,是Java一个重要的应用分支,也是当时Java最令人感兴趣的地方(它一改网页呆板的界面),就是在WWW网页(Home Page / Pages)设计中加入动画、影像、音乐等,而要达到这些效果使用最多的是Java Applet和Java Script (这是一种Java的命令语言)。