3GO模拟飞行网|3GO Cyber Air Force

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1464|回复: 1

抓住网页恶意代码的"黑手"

[复制链接]
发表于 2001-11-13 11:23:00 | 显示全部楼层 |阅读模式
9/12/2001 17:8:58· ·小乔··yesky<br>编者按:病毒的泛滥弄得计算机用户人人 自危,木马的流行让人感觉在互联网上毫无隐私可言,而网上愈 演愈烈的&quot;网 页病毒&quot;更是搅得人心惶惶,从各方面的求救信号中可以略窥这&quot;病毒&quot;的症状 :在无意浏览了一些网页后,就发现IE标题栏、IE起始主页被莫 名其妙地修改 了、每次开机出现莫名其妙的提示框、修改输入法启动项、启动无关程序 ......,更有文章称:有些网页&quot;病毒&quot;会格式化硬盘。更令人生厌的是,通过 IE&quot;工具&quot;菜单下的&quot;Internet选项&quot;操作界面根本不能修改以恢复 原状。在互联 网发达的今天,谁不天天要浏览众多网页?如果真有这样一些病毒,岂还得了 ?编者从网友来信、论坛收集了一些信息,并对此作了比较详细 的分析后,认 为这&quot;病毒&quot;的更大成分是恶意代码。现在就让我们一步一步地让这些恶意代码 曝光,揭开其&quot;神秘&quot;的面纱!】<br>相关网文摘引 <br>  以下是从网上一篇文章节选(由于不知道出处,敬 请作者与我们联系),作者对能格式化硬盘的恶意代码来了一次&quot; 亲密接触&quot;, 可真令人心惊胆颤的,看来说什么恶意代码能格式化硬盘并非空穴来风! <p>  一日,忽然听朋友说,他在上网 的时候, 不知点击了什么东西,而将他的硬盘全部给格式化了。我首先的念头就是:该 不会是中了那个有名的国产宏病毒&quot;七月杀手&quot;?不过这个宏病毒 是在系统 Autoexec.bat文件中加入了&quot;deltree c:\/y&quot;,应该不会格式化整个硬盘。那该不会是……<br>  曾经在某个杂志 上看到过一个介绍,说什么IE浏览器可以通过执行ActiveX而把 硬盘格式化, 而且记得当时还公布了源代码,只是当时公布的源代码是针对西班牙版的 Windows,对中文版的Windows没有用,说不定那些代码现在已经被一 些高手给 改成了针对中文Windows的呢。<br>  问问自己的朋友,他也是稀里糊涂地 被格式化掉硬盘的,当时进入的网站也不记得了。没有办法,我只好自己跑到 国内的一些网站去找类似的主题文章。皇天不负苦心人,终于找 到了几个可以 格式化硬盘的HTML文件。网站上的版主出自好心,提醒下载的网友:只能供自 己研究,不可害人。<br>  考虑到危险性,我先用记事本随便打开其中一个 看看源代码,没有想到这个源文件竟给加了密,里面是用 JavaScript写的脚本 ,加密的部分好像只是一些字符的定义,而真正的脚本内容也只是显示一些字 符在屏幕上。因为自己的机器是刚装好的,没有什么特别重要的数据,所以 <br>就抱着&quot;过把瘾就死&quot;的念头,用IE浏览器打开了这个HTML文件 。接着,浏 览器发出一个警告:&quot;该页上的ActiveX控件与页上的其它部分进行交互可能不 安全,是否允许进行交互?&quot;。如果你选择&quot;是&quot;,则就会运行那些不安全控件 。不过我试的这个HTML文件只是给大家开个玩笑,你打开它后, 它说什么&quot;你 的C盘已经被它强行输入格式化,一旦重新启动就格式化了。请不要启动,立 即保存有用的文件。&quot;等诸如此类的话。我仔细检查了一下Windows启动程序里 的内容,也没有什么变化,于是放心大胆地重启,果然是开的玩 笑。<br>   在下载的另外一个HTML文件中,看看源代码,不禁吓了一跳。程序仅有的不足 30代代码中有24行都是调用Windows里自带的format.com命令,真是够狠的。 除了A、B两个驱外,只要你能够分的区C-Z,都会被格式化。为了 验证其效果 ,又不想我的硬盘被格式化,我把Windows里自带的format.com给改了名字, 然后用IE打开该HTML文件,浏览器同样发出一个警告:&quot;该页上的 某些软件 (ActiveX控件)可能不安全。建议您不要运行。是否允许运行?&quot;。当你选择&quot; 是&quot;的时候,会弹出几十个DOS窗口,可能是因为它找不到 format.com这个文件 ,找开的所有DOS窗口都是什么显示也没有。它不但调用了format.com,另外 还加上了一些参数,如快速格式化等,再加上格式化时窗口就已 经自动完成了 硬盘格式化的工作,等你发现时也已经悔之晚矣。幸好我事先已经把硬盘里的 format.com给改了名字,否则后果可想而知。<br>中毒现象素描: <br>  笔者对网上言论进行了搜集,将其分门别类陈列如下:<p>(一)、默认主页被修改 : <p>  &quot;最近,我的电脑发生了 一个奇怪的现象,浏览器的默认主页被自动设为www.********.com,一开始我并没有留意 ,心想只要在IE的&quot;Internet选项&quot;中修改回原来的设置就可以了 ,修改后,果 然没事了,但第二天开机,又被改回去了。 &quot; <p>(二)、IE标题栏被修改: <p>  &quot;不知从什么时候起,我 的每个打开的IE页里的 标题栏多出了什么&quot;让历史告诉未来,知青网(www.zhiqing.org)&quot;的字样; &quot; <p>(三)、开机时出现提示框: <p>  &quot;一次浏览了一个网页后 ,在看了作者高现需写的&quot;去除IE默认主页、标题诡异添加之一招 两式&quot;(http://www.yesky.c om/20010808/191701.shtml)后虽然解决了去除默认主页问 题,但没法去 掉开机时出现一个提示框,什么“欢迎来访www.play.cn.gs&quot;之类的! &quot;<p>(四)、IE地址栏下多出了文字 :<p>  &quot;地址栏下出现一些莫名 其妙的文字,不知怎么去掉。 &quot;<p>(五)、在注 册表中对IE相关的注册表项如 默认主页等修改无效: <p>  &quot; 有些网站很可恶,它将IE的默认网页设置成了 该网站的名称后,我自己通过修 改注册表项的&quot;Start Page&quot;和 &quot;Default_Page_URL&quot;后仍不能生效,不知怎么办 !&quot;<p>(六)、Internet Exploer中点击右键,菜单中出现非法站点 的链接:<p>  &quot;同样也是由于一次访问了一个网站,以后当浏览网页时,如果点击右键,则弹出的菜单中有非法站点的链接。&quot; <p>(七)、修改了操作系统<p>  &quot;浏览了一个网站,后来发现系统已经禁止了'关闭系统'、'运行'、'注销'功能,并且C盘找不到了、注册表编辑器regedit不能使用、DOS程序不能运行,无法进入系统实模式&quot; <br>程序讲解<p>  笔者了 解一些有关Applet、ActiveX及脚本语言方面的知识,在下载含 有恶意代码后 ,对其引用的Javascript脚本文件进行了一些分析。由于安全原因,请恕我不 能将代码完整地写出来或者对程序的编写进行过细的讲解,只是 让大家了解到 这个代码并不神秘。JAVA的最初应用就是Applet程序。虽然JAVA对Applet的安 全作出了限制,但由于浏览器或语言漏洞的原因,当它与功能比较强大的脚本 语言结合时,这些小应用程序常可凭借正常或诡秘的手段对用户 的机器进行修 改,比如修改注册表,运行相关的DOS命令,在用户机器上安装木马或激活相 关的应用程序,其功能之强大远非单纯的网页所能胜任,由此看来,现在网上 所流传的说什么浏览相关网页中病毒或者硬盘被格式化也就见怪 不惊了。另外 ,还有一种嵌入式应用程序就是ActiveX,是微软的一种插件技术,也可以象 Applet一样进行一些针对本机的操作。现在让我们了解一下以下代码编制的机 理(如果你不了解脚本语言,可仅看看程序修改了哪些注册表表 项,然后找到 这些表项并修改回来)。 <p>document.write(&quot;〈APPLET HEIGHT=0 WIDTH=0 code=.......〉〈 /APPLET〉&quot;); file://嵌入Applet文件<p>function f){ file://做出种种修改的语句就在这个函数里<br>try <br>{ <br>//ActiveX initialization <br>a1=document.applets[0]; file://获取applet运行对象,以下语句指向注册表中有关IE的表项 <br>a1.setCLSID(&quot;{.............}&quot;); <br>a1.createInstance(); <br>Shl = a1.GetObject(); <br>a1.setCLSID(&quot;{.............}&quot;); <br>a1.createInstance(); <br>FSO = a1.GetObject(); <br>a1.setCLSID(&quot;{.............}&quot;); <br>a1.createInstance(); <br>Net = a1.GetObject(); <p>try <br>{ <br>if ( document.cookie.indexOf(&quot;Chg&quot;) == -1) <br>{ <br>//以下是对操作系统相关注册表项值项的修改 <p>//使系统没有“运行”项,以防止用户就不能通过注册表 编辑器 来修复设置。<br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\ Explorer\\NoRun&quot;, 01, &quot;REG_BINARY&quot;); <p><br>//让操作系统无“关闭系统” 选项<br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\ Explorer\\NoClose&quot;, 01, &quot;REG_BINARY&quot;) ;<p>//让操作系统无“注销”选项 <br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\ Explorer\\NoLogOff&quot;, 01, &quot;REG_BINARY&quot;); <br>注:使受害者系统没有“注销”项 <br>//让操作系统无逻辑驱动器C<br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\ Explorer\\NoDrives&quot;, &quot;00000004&quot;, &quot;REG_DWORD&quot;);<p>//禁止运行所有 的DOS应用程序;<br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\ WinOldApp\\ Disabled&quot;,&quot;REG_BINARY&quot;) ;<p>//让操作系统无法切换 至传统DOS的实模式下<br>Shl.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\ \WinOldApp\\NoRealMode&quot;,&quot;REG_BINARY&quot;) ;<p>// 让系统登录时显示一个登录窗口,以下是写入启动弹出对话 框标 题 <br>Sh1.RegWrite ( &quot;HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\ Winlogon\\Legal NoticeCaption&quot;, &quot;........&quot;); <p>// 写入启动弹出对话框内 容<br>Sh1.RegWrite ( &quot;HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\ Winlogon\\Legal NoticeText&quot;, &quot;...............&quot;); <p><p>//以下是对IE 相关注册表项值项 的修改<p>// 设置浏览器默认主页 <br>Sh1.RegWrite (&quot;HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Start Page&quot;, &quot;..............&quot;); <p>// 修改启动中的输入法启动项 <br>Sh1.RegWrite ( &quot;HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\ Run\\internat.e xe&quot;, &quot;..............&quot;); <p>// 设置注册不可更改 <br>Sh1.RegWrite ( &quot;HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\ Policies\\WinOl dApp\\NoRealMode&quot;, &quot;00000000&quot;, &quot;REG_DWORD&quot;); <p>//修改 浏览器的标题栏 <br>Shl.RegWrite (&quot;HKLM\\Software\\Microsoft\\Internet Explorer\\Main\\Window Title&quot;, &quot;...............&quot;); <br>Shl.RegWrite (&quot;HKCU\\Software\\Microsoft\\Internet Explorer\\Main\\Window Title&quot;, &quot;..............&quot;); <p>// 以下程序是将含恶意代码的网页添加至 收藏夹中<br>var WF, Shor, loc; <br>WF = FSO.GetSpecialFolder(0); <br>loc = WF + &quot;\\Favorites&quot;; <br>if(!FSO.FolderExists(loc)) <br>{ <br>loc = FSO.GetDriveName (WF) + &quot;\\Documents and Settings\\<br>&quot; + Net.UserName + &quot;\\Favorites&quot;; <br>if(FSO.FolderExists( loc)) <br>{ <br>AddFavLnk(loc, &quot;显示标题.....&quot;, &quot;URL......&quot; ); <br>} <br>}<p>//设置 cookie值<br>var expdate = new Date((new Date( )).getTime() + (1)); <br>document.cookie=&quot;Chg=general; expires=&quot; + expdate.toGMTString( ) + &quot;; path=/;&quot; <br>} <br>} <br>catch(e) <br>{} <br>} <br>catch(e) <br>{} <br>} <br>//初始化函数,并每隔一秒执行修 改程序<br>function init() <br>{ <br>setTimeout(&quot;f()&quot;, 1000); <br>} <br>init(); <br>因应对策:<p>   当不小心遭了恶意代码时,首先需要做的是动修改注册表相关表 项值: <p>一、手动修改<p>1、改正对默认 主页的修改:<br>在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main中的 &quot;Start Page&quot;和&quot;Default_Page_URL&quot;。 <p>2、更改对Internet Explorer的标题栏的修改:<br>在 HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main中右边的 窗口中修改字符串值“Window Title”为新标题的名 字。 <p>3、改正对地址栏 下的文字修改: <br>在 HKEY_CURRENT_USER\Software\Microsoft\Interner Explorer\Toolbar,在右边找到键值LinksFolderName,将其中的内容删去即可 。 <p>4、改正对Windows启动栏的 修改: <br>这种情况适用于通过修改注册表项?quot;Start Page&quot;和 &quot;Default_Page_URL&quot;仍不能生效的情况,可试着依次打开如下主键: HKEY_LOCAL_MACHINE/Microsoft/Windows/CurrentVersion/run修改右栏里的 “qwe”的键值,删掉表项值,重新启动计算机。 <p>5、改正在Internet Exploer中点击右键中出 现非法站点的链接:<br>在 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt中删除 非法链接的该键值即可。 <p>6、清除浏览器中地址栏中无用的地址:<br>在 HEKY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypeURLs中删除无用的键值即可。 <p>二、应用工具软件 <br>  下载《反修改精灵》软件: <br>   该软件能有效地防止IE修改 ,可到天极网mydown下载站下载。 <p>三、备份与命令恢复<p>  1:对于Win9x用户,可在机器启动时按F8 键,选择到MS-DOS方式下,使用Scanreg/restore命令来恢复以前备份的正常注册表。<br>  2:对于Win2000用户,把以下内容copy下来,存 为 recover.reg文件,选带命令行的安全模式,用命令regedit recover.reg导入,然后重启机器:<p>recover.reg文件内容如下: <p>Windows Registry Editor Version 5.00 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\Explorer] <br>&quot;NoDriveTypeAutoRun&quot;=dword:00000095 <br>&quot;NoRun&quot;=hex: <br>&quot;NoLogOff&quot;=hex: <br>&quot;NoDrives&quot;=dword:00000000 <br>&quot;RestrictRun&quot;=dword:00000000 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\System] <br>&quot;DisableRegistryTools&quot;=dword:00000000 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\System] <br>&quot;DisableRegistryTools&quot;=dword:00000000 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\WinOldApp] <br>&quot;Disabled&quot;=dword:00000000 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ Policies\WinOldApp] <br>&quot;NoRealMode&quot;=dword:00000000 <p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion \Winlogon] <br>&quot;LegalNoticeCaption&quot;=&quot;&quot; <br>&quot;LegalNoticeText&quot;=&quot;&quot; <p>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main] <br>&quot;Window Title&quot;=&quot;&quot; <p>[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main] <br>&quot;Window Title&quot;=&quot;&quot; <p><br>防患于未然: <br>  笔者阅读了网上相关文章,对防御方法作了一些总结,希望 你能作些 积极的防范。<p>  1、要避免中招,关键是不要轻易去一些自己并不 了解的站点,特别是那些看上去美丽诱人的网址更不要贸然前往 ,否则吃亏的 往往是你。<p>  2、运行IE,点击“工具→Internet选项→安全→ Internet区域的安全级别,把安全极别由“中”改为“高” 。<p>  3 、由于该类网页是含有有害代码的ActiveX或Applet、 Javascript的网页文件 ,因此在IE设置中将ActiveX插件和控件、Java脚本等 全部禁止就可以避免中 招。具体方法是:在IE窗口中点击“工具→Internet选 项,在 弹出的对话框 中选择“安全”标签,再点击“自定义级别”按钮,就会 弹出“安全设置”对话框,把其中所有ActiveX插件和控件以及Java相关全部 选择“ 禁用”即可。不过,这样做在以后的网页浏览过程中可能会造成一些正 常使用ActiveX的网站无法浏览。唉,有利就有弊,您还是自己看着办吧。 <p>  4、对于Windows98用户,请打开 C:\WINDOWS\JAVA\Packages\CVLV1NBB.ZIP,把其中的“ ActiveXComponent.class”删掉;对于WindowsMe用户,请打开 C:\WINDOWS\JAVA\Packages\5NZVFPF1.ZIP,把其中的“ ActiveXComponent.class”删掉。请放心,删除这个组件不会影响到你。 <p>  5、安装网络防火墙,特别是安装了Norton2001后,进 入该类网 页就会报警提示有脚本写注册表,国产反病毒软件KVW3000也有此类功效,建 议您也安装一个这样的软件。 <p>  6、虽然经过一番辛 苦的劳动修 改回了标题和默认连接首页,但 如果以后又不小心进入该站就又得麻烦一次 。其实,你可以在IE中做一些设置 以便永远不进该站点:<p>  打开IE,点击“工具”→ “Internet选项 ”→“内容”→“分级审查”,点“启用”按钮,会调出“分级审查”对话框 ,然后点击“许可站点”标签,输入不想去的网站网址,如输入 : http://www.XXX.com,按“从不”按钮,再点击“确定”即大功告成! 正常 浏览网页的<br>。<br>  7、设置注册表相关值项,为注册表&quot;加锁&quot;<br>  (1)运行注册表编辑器regedit.exe;<br>  (2)在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System下,增加名为DisableRegistryTools的DWORD值项,并将其值改为“1”,即可禁止使用注册表编辑器regedit.exe。 <br>  如果你由于其它原因需要修改注册表,可用如下解锁方法:<p>  用记事本编辑一个任意名字的.reg文件,比如recover.reg,内容如下:<p>REGEDIT4 <p>[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] <br>&quot;DisableRegistryTools&quot;=dword:00000000 <p>  则双击运行recover.reg即可。<p><br>背景资料: <p>一、什么是注册表<p>注册表是在 Windows中,存储关于计算机配置信息的数据库。注册表包含 Windows 2000 操作时不断引用的信息,例如:<p>每个用户的配置文件。 <p>计算机上安装的程序和每个程序可以创 建的文档类型。<p>文件夹 和程序图标的属性设置。<p>系统中 的硬件。<p>正在使用的端口 。<p>注册表按层次结 构来组织,由项、子项、配 置单元和值项组成。 <p>请 参阅配置单元 ;子项;值项。 <br>二、什么是值项<p>  出现在注册表窗口右窗 格中的数据字符串,它定义了当前所选项的值。值项有三个部分 :名称、数据 类型和值本身。 <p>三、什么是注册表项 <p>  在“ 注册表编辑器”中,出现在“注册表编辑器” 窗口 的左窗格中的文件夹。项可 以包含子项和值项。例如,Environment 是 HKEY_CURRENT_USER 的一个项。 <p>四、 什么 是Java Applet<p>  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的命令稿语言)。 <p>五、什么是JavaScript<p>   JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言 、与Web 客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或 文件引用在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是 Java与HTML折衷的选择,具有基于对象、简单、安全、动态、跨 平台性等特性 。<p>六、什么是ActiveX<p>   ActiveX是Microsoft提出的一组使用COM(Component Object Model,部件对 象模型)使得软件部件在网络环境中进行交互的技术。 它与具体的编程语言无关。作为针对Internet应用开发的技术 ,ActiveX被广 泛应用于WEB服务器以及客户端的各个方面。同时,ActiveX技术也被用于方便 地创建普通的桌面应用程序。在Applet中可以使用ActiveX技术 ,如直接嵌入 ActiveX控制,或者以ActiveX技术为桥梁,将其它开发商提供的多种语言的程 序对象集成到Java中。与Java的字节码技术相比,ActiveX提供 了“代码签名 ”(Code Signing)技术保证其安全性。<p>
发表于 2003-4-5 17:21:24 | 显示全部楼层
好,呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|3GO模拟飞行网|3GO Cyber Air Force ( 沪ICP备08002287号|沪ICP备14050587号 )

GMT+8, 2024-6-16 04:02

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表