当前位置: 首页 > 图文教程 > 网络编程 > ASP > 一个简单的HTML病毒分析

ASP
如何编写适合FireFox的对话框?
关于处理GET方式提交的含有特殊字符的参数
对URL地址进行编码 优化2
在线管理数据库 类
用Asp备份与恢复SQL Server 数据库
计算两个时间之差的函数
asp实现sql的备份与恢复
SQL Server 存储过程的分页
sql 存储过程分页
邹建的分页存储过程改了一下
关于使用存储过程创建分页
SQL SERVER编写存储过程小工具
各种存储过程使用指南
SQL Server--怎样用ADO在SQL SERVER中建库,建表
几例在ASP存储过程的使用方法
用ASP+XML打造留言本
让 Asp 与 XML 交互
msxml3.dll 错误 ''800c0005''解决方案
MSXML4.0 版中的新增功能
关于ASP生成伪参数技巧

ASP 中的 一个简单的HTML病毒分析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 38 ::
收藏到网摘: n/a

一直就想写这篇东西了,只是上班时说要上班,不写,回家后又忙着玩游戏,丢一边去了。现在只好不务正业的开写了,希望头儿不会知道我的blog。哈哈   在很久之前就对HTML的病毒很感兴趣了,很好奇怎么能远程向本地不经过允许就能下载可执行文件的,只是一直没机会搞得到ASP的原码,所以不才敢断章取义的去作什么分析。最近一次听一朋友说他看一个网页时病毒防火墙提示有病毒,叫我小心(先感谢一下他先),我闪了一下念头,就打开FlashGet把那个病毒首页下了下来。   稍微看了一下发现在首页代码的下面几行里有一个隐含的浮动帧。其引用的URL地址并不是本地的,感觉应该是了,然后再次动用FlashGet下了下来。居然发现放病毒的空间不支持ASP,下下来的ASP文件是源文件。这样兴趣来了,三下五除二的把所有病毒的相关文件都下了下来。   由于这个病毒很简单,所以我也只摘抄了一些片段而以,如果实在感兴趣的话,不防去找一个有病毒的网页瞅瞅,不过,不要用IE去看,要用FlashGet等下载工具下载下来,再用记事本打开,不然中招了可不要来找我,好了正文开始。   真正的病毒有三个文件,一个是引导文件,一个是下载文件,第三个是激活文件。   第一个引导文件     关键部分是:         这个作用是将下载和激活两个文件当作该页的对象来引用并运行,这个也是病毒文件能够在本地进行感染的关键地方,在引用的文件里居然能够无阻碍的引用客户端的Action组件,唉唉,这就是那把刀啊。   第二个是下载exe病毒文件     然后是怎么将exe下载下来,而不弹出下载的提示框呢。这个是收下载文件来完成的任务。     该病毒的作法是在服务器端用Microsoft.XMLHTTP组件和response.contenttype = "image/gif"将病毒文件以图片格式下载到客户端的网页缓存里(这里是很简单的Get/BinaryWrite操作,就不详细说了)。   第三个是激活     感觉激活的过程很巧妙,病毒是先用fso在c:\下生成一个hta文件,将激活过程写到这个文件里。然后再用WScript.Shell来运行这个文件。这样,激活过程中需要大权限的操作(比如:写注册表操作)就没问题了。     具体操作过程是这样的。将在网页缓存目录里的病毒文件移动到系统文件目录,然后改名为win.exe。再往注册表里写入自启动的键,使得病毒能在系统重启后自动启动,然后删除hta文件,完成感染和激活。   这就是病毒的基本运行过程(依照惯例病毒破坏部分就不提了),但是这个对我们有什么用呢,其实这种病毒我是很讨厌的,但是,其下载exe和激活过程还是有可利用的地方的。比如:你作的系统必须要客户端下载一些组件并激活后才能使用的,这种操作面对了解的人当然是不成问题,但是如果你面对的是那种网络是什么都还没搞清林的用户时,我估计系统还没开始使用你的电话就要打爆了。如果借用种方式,在对方允许的情况下自动下载组件,并自动激活,那就省事多了,是吧。   不过,这种方式对小形文件是很方便,如果要下载1m以上的文件..那就要考虑多线程下载的操作了,当然这个不是这篇文章的范围了。以后有机会再说说用ASP+XML实现WEB多线程上传多线程下载的方法吧。