Web安全之网页木马的检测与防御

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Web安全之网页木马的检测与防御随着Web2.0、社交网络、微博等等一系列新型的互联网产品的诞生,基于Web环境的互联网应用越来越广泛,企业信息化的过程中各种应用都架设在Web平台上,Web业务的迅速发展也引起黑客们的强烈关注,接踵而至的就是Web安全威胁的凸显,黑客利用网站操作系统的漏洞和Web服务程序的SQL注入漏洞等得到Web服务器的控制权限,轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害。在Web安全的攻击种类中,网页木马一直是一个不容忽视的问题。黑客把一个木马程序上传到一个网站里面然后用木马生成器生一个网马,再上到空间里面,再加代码使得木马在打开网页里运行,从而获取用户的隐私信息。随着网页木马破坏性的增大,人们对网页木马的重视程度也在逐渐增加。

1网页木马简介

1.1网页木马的定义

网页木马是在宏病毒、木马等恶意代码基础上发展出来的一种新形态的恶意代码.类似于宏病毒通过Word 等文档中的恶意宏命令实现攻击.网页木马一般通过HTML 页面中的一段恶意脚本达到在客户端下载、执行恶意可执行文件的目的,而整个攻击流程是一个“特洛伊木马式”的隐蔽的、用户无察觉的过程,因此,国内研究者通常称该种攻击方式为“网页木马”.

目前,学术界对网页木马尚无一个明确的、统一的定义.Wiki 将它定义为一种用户不知情的下载,发生的场景可以是用户阅览邮件、访问网站页面以及点击一个欺诈性的弹出框时,等等,该定义属于字面解释,包括的内容比较宽泛,如利用社会工程学手段欺骗用户下载也属于其涵盖范围.此外,Wiki 还用Drive-by-Install 这一术语来表示下载并安装恶意程序的过程;Google 的Provos 等人将网页木马限定为客户端在访问页面时受到攻击并导致恶意可执行文件的自动下载、执行,该定义指出了“访问页面时受到攻击”和“自动下载、自动执行恶意可执行文件”两个关键点;UCSB 的Cova 等人进一步指出,网页木马是以一段JavaScript 代码作为攻击向量的一种客户端攻击方式,而实际上,还存在一些通过CSS 元素、VBScript 脚本发起攻击的网页木马。

综上所述,网页木马定义为:一种以JavaScript,VBScript,CSS 等页面元素作为攻击向量,利用浏览器及插件中的漏洞,在客户端隐蔽地下载并执行恶意程序的基于Web 的客户端攻击。

1.2网页木马的攻击流程

网页木马采用一种被动攻击模式(即pull-based 模式):攻击者针对浏览器及插件的某个特定漏洞构造、部署好攻击页面之后,并不像发送垃圾邮件那样主动将内容推送给受害用户(即push-based 模式),而是被动地等待客户端发起的页面访问请求.其典型攻击流程如图 1 所示:1. 客户端访问攻击页面;2. 服务器做出响应,将页面内容返回给客户端;3. 页面被浏览器加载、渲染,页面中包含的攻击向量在浏览器中被执行并尝试进行漏洞利用;4,5. 存在该漏洞的客户端被攻破,进而下载、安装、执行恶意程序。

从网页木马的攻击流程可以看出,网页木马是一种更加隐蔽、更加有效的向客户端传播恶意程序的手段:相比较蠕虫以主动扫描等方式来定位受害机并向其传播恶意程序,网页木马采用一种“守株待兔”的方式等待客户端主动对页面发出访问请求,这种被动式的攻击模式能够有效地对抗入侵检测、防火墙等系统的安全检查.

1.3可能被网页木马利用的漏洞

1.利用URL格式漏洞

此类网页木马是利用URL格式漏洞来欺骗用户。构造一个看似JPG格式的文件诱惑用户下载,但事实上用户下载的却是一个EXE文件。此类攻击,具有相当的隐蔽性,利用URL 欺骗的方法有很多种,比如起个具有诱惑性的网站名称或使用易混的字母数字掉包进行银行网络钓鱼,还有漏洞百出的“%30%50”之类的Unicode编码等等。

2.通过ActiveX控件制作网页木马。

通过 ActiveX 把普通的软件转化为可以在主页直接执行的软件的网页木马,此类网页木马对所有的系统和IE版本都有效,缺点是浏览网页木马时会弹出对话框,询问是否安装此插件。病毒作者通常是伪造微软、新浪、Google等知名公司的签名,伪装成它们的插件来迷惑用户。

3.利用WSH的缺陷

利用WSH修改注册表,使IE安全设置中“没有标记为安全的的activex控件和插件”的默认设置改为启用,然后再利用一些可以在本地运行EXE程序的网页代码来运行病毒。它的危害在于,可以利用IE的安全漏洞提升权限达到本地运行任意程序的后果。

4.利用MIME漏洞制做的网页木马。

它利用了Microsoft Internet Explorer中MIME/BASE64处理的漏洞,MIME(Multipurpose Internet Mail Extentions),一般译作“多用途的网络邮件扩充协议”。顾名思义,它可以传送多媒体文件,在一封电子邮件中附加各种格式文件一起送出。现在它已经演化成一种指定文件类型(Internet的任何形式的消息:E-mail,Usenet新闻和Web)的通用方法。在使用CGI程序时你可能接触过 MIME类型,其中有一行叫作Content-type的语句,它用来指明传递的就是MIME类型的文件(如text/html或 text/plain)。MIME在处理不正常的MIME

类型时存在一个问题,攻击者可以创建一个Html格式的E-mail,该E-mail的附件为可执

行文件,通过修改MIME头,使IE不能正确处理这个MIME所指定的可执行文件附件。

5.利用系统的图片处理漏洞

这是种只要浏览图片就可以传播的网页木马。这种木马是把一个EXE文件伪装成一个BMP 或JPG图片文件,在网页中添加如 的代码来欺骗IE自动下载,然后利用网页中的Java Script脚本查找客户端的Internet临时文件夹,寻找下载的BMP格式文件,把它拷贝到TEMP目录.再利用脚本把找到的BMP文件用 DEBUG还原成EXE,并添加到注册表启动项中,达到随系统的目的。

6.HTML文件木马

首先利用工具把EXE格式的文件转化成HTML文件的木马,这样.EXE文件看起来就变成了Htm文件,欺骗访问者访问假冒的Htm文件从而达到运行病毒的目的。它和BMP网页木马运用了同一个原理,也会利用JAVASCRIPT脚本和debug程序来转换回EXE文件

7.IFRAME溢出

IE IFRAME漏洞利用了MS05020中提到的IE溢出漏洞, IE在处理iframe标签的时候,会调用一个叫作SHDOCVW!CBaseBrowser2::SetFramName函数来进行unicode copy (wcscpy),在拷贝iframe的name时,没有进行边界检查,构造恶意的代码就会导致IE 的溢出。

8. Microsoft Internet Explorer Javaprxy.DLL COM对象堆溢出漏洞

Microsoft Internet Explorer存在一个堆溢出漏洞。当一个恶意的网页实例化'javaprxy.dll' COM对象时,可能导致堆溢出,成功利用该漏洞能够在客户端上下载执行任意代码。

2网页木马的主要检测技术

在互联网中大规模进行页面检查,检测出被挂马页面,是网页木马防御的重要环节:一方面,可以通知被挂马网站的管理员及时清除页面中嵌入的恶意内容,从而改善互联网浏览环境;另一方面,有助于让防御方掌握网页挂马的范围、趋势以及捕获最新的网页木马样本.

2.1监测基本思想

大规模网页挂马检测的基本思路为:使用爬虫爬取互联网页面,将爬取到的URL 输入到检测环境——客户端蜜罐中进行网页木马检测.客户端蜜罐(client honeypot)这一概念首先由国际蜜网项目组(The HoneynetProject)的Spitzner 针对网页木马这种被动式的客户端攻击而提出.在网页挂马检测时,客户端蜜罐根据URL 主动地向网站服务器发送页面访问请求,并通过一定的检测方法分析服务器返回的页面是否带有恶意内容.

在互联网中大规模进行网页挂马检测有两个关键点:

1) 提高爬虫爬取的覆盖率,这方面可以通过采用大规模的计算平台、设计均衡的并行爬取分配策略等来实现

2) 在客户端蜜罐中实现高效、准确的网页木马检测方法。

2.2主要监测方法

•基于反病毒引擎扫描的检测

基于反病毒引擎扫描是研究人员进行网页挂马检测时较早使用的方法,该方法主要基于规则或特征码匹配来检测页面中是否含有恶意内容.

相关文档
最新文档