网页挂马工作原理完全分析

日期: 2008-12-14 作者:晓兵 来源:TechTarget中国 英文

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

微软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.特定文件格式检测,检测已知的格式溢出。

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

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

晓兵
晓兵

相关推荐