当前位置: 首页 > 图文教程 > 服务器 > 安全防护 > 安全技术谈:网页挂马工作原理完全分析

安全防护
为Windows 2003安全—层层设防(3)
为Windows 2003安全—层层设防(4)
修改IIS的Banner隐藏操作系统版本
以毒攻毒!IIS Banner巧伪装
四招加强Windows 2003安全性
深入剖析EFS(2)
设置Active Directory域(1)
设置Active Directory域(2)
Rootkit分析(1)
Rootkit分析(2)
Rootkit分析(3)
Windows域信任关系建立全攻略
关于网站木马的解释(1)
关于网站木马的解释(2)
hdsi2.0 sql注入部分抓包(1)
hdsi2.0 sql注入部分抓包(2)
hdsi2.0 sql注入部分抓包(3)
hdsi2.0 sql注入部分抓包(4)
建造永不被杀的80端口后门(1)
建造永不被杀的80端口后门(2)

安全防护 中的 安全技术谈:网页挂马工作原理完全分析


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

通常,微软IE工作过程描述如下:

作为网页挂马的散布者,其目的是将木马下载到用户本地,并进一步执行,当木马获得执行之后,就意味着会有更多的木马被下载,进一步被执行,进入一个恶性的循环,从而使用户的电脑遭到攻击和控制。为达到目的首先要将木马下载到本地。根据上图的流程,常见的方式有以下几种:

1.将木马伪装为页面元素。木马则会被浏览器自动下载到本地。

2.利用脚本运行的漏洞下载木马

3.利用脚本运行的漏洞释放隐含在网页脚本中的木马

4.将木马伪装为缺失的组件,或和缺失的组件捆绑在一起(例如:flash播放插件)。这样既达到了下载的目的,下载的组件又会被浏览器自动执行。

5.通过脚本运行调用某些com组件,利用其漏洞下载木马。

6.在渲染页面内容的过程中利用格式溢出释放木马(例如:ani格式溢出漏洞)

7.在渲染页面内容的过程中利用格式溢出下载木马(例如:flash9.0.115的播放漏洞)

在完成下载之后,执行木马的方式有以下几种:

1.利用页面元素渲染过程中的格式溢出执行shellcode进一步执行下载的木马

2.利用脚本运行的漏洞执行木马

3.伪装成缺失组件的安装包被浏览器自动执行

4.通过脚本调用com组件利用其漏洞执行木马。

5.利用页面元素渲染过程中的格式溢出直接执行木马。

6.利用com组件与外部其他程序通讯,通过其他程序启动木马(例如:realplayer10.5存在的播放列表溢出漏洞)

在与网马斗争的过程中,为了躲避杀毒软件的检测,一些网马还具有了以下行为:

1.修改系统时间,使杀毒软件失效

2.摘除杀毒软件的HOOK挂钩,使杀毒软件检测失效

3.修改杀毒软件病毒库,使之检测不到恶意代码。

4.通过溢出漏洞不直接执行恶意代码,而是执行一段调用脚本,以躲避杀毒软件对父进程的检测。

网页挂马的检测

传统的检测防御方式:

1.特征匹配。将网页挂马的脚本按脚本病毒处理进行检测。但是网页脚本变形方、加密方式比起传统的PE格式病毒更为多样,检测起来也更加困难。

2.主动防御。当浏览器要做出某些动作时,做出提示,例如:下载了某插件的安装包,会提示是否运行,比如浏览器创建一个暴风影音播放器时,提示是否允许运行。在多数情况下用户都会点击是,网页木马会因此得到执行。

3.检查父进程是否为浏览器。这种方法可以很容易的被躲过且会对很多插件造成误报。

安天防线的行为分析方式:

1.检测伪装文件格式。通过对文件格式精确的识别,判断页面元素是否为伪装的恶意代码。

2.检查页面元素来源是否为长期散布网页挂马的站点。

3.检测特定函数调用堆栈实现。

(a)区分用户下载文件,浏览器自动下载文件。

(b)检测已知缓冲区漏洞。

(c)检测进程创建调用堆栈、调用参数是否和浏览器常规一致,以检测未知漏洞造成的文件执行。

4.对文件执行进行监控,检测文件执行参数等特征。

5.对部分目录写文件操作进行监控。

6.检测系统时钟修改。

7.检测对系统DLL内存镜像修改(导入、导出表、函数体内容)。

8.检查PE文件和CAB包裹的数字签名。

9.特定文件格式检测,检测已知的格式溢出。

通过对以上几项的加权处理,可以实现有效对已知和未知网页挂马的检测。