- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
?
?
Javascript在恶意网页异常检测中的应用研究
?
?
摘要:Web应用在移动终端的广泛普及给用户提供了便利的服务,与此同时恶意Web网页中的Javascript代码也会带来严重的安全问题,如何检测恶意网页一直是一个热点安全问题。本文首先介绍常见的恶意网页攻击技术,并在此基础上针对性地提出恶意网页攻击的检测方法;最后阐述了一种基于JavaScript的轻量级恶意网页检测技术。
关键词:恶意网页;攻击技术;检测方法;Javascript
:G642:A
:1009-3044(2019)34-0029-02
和传统的终端设备一样,移动终端在使用过程中也面临严重的安全风险,这不仅和移动终端自身的安全设置有关,也在很大程度上受到访问的Web网站的安全性的影响。
终端在访问网络页面时,如果页面能够利用终端的设置漏洞对其进行攻击,则认为这样的网页就是恶意网页,一般认为那些可以偷偷获取用户敏感信息、或引诱使用者下载恶意程序的页面都是恶意网页。
目前恶意网页已经发展成一种严重的安全问题,相关研究表明它已经成为互联网上针对移动终端的主要工具,针对移动终端的攻击技术也呈现出多样化。更加严重的是,为了增加恶意Web页面的攻击范围和能力,恶意网页开始向云端发展,攻击手段更加隐蔽。
1恶意网页攻击技术
产生恶意网页的一个必要前提是提供恶意的Web服务,这些服务只有将恶意页面推送到用户终端才能实现恶意攻击。常见的恶意攻击途径包括[1]:(1)浏览器及其插件。用户使用Web应用最常用的入口就是浏览器,因此它就成为恶意网页攻击的首要途径。Web应用设计过程中的技术能力、测试水平等因素会导致Web应用存在BUG,一旦遇到特殊的场景会触发不可预料的行为,也就是常说的漏洞。(2)社交网络。目前产生了各种各样的社交应用,包括基于桌面的社交程序、基于浏览器的社交论坛等。为了吸引用户进入预先构建的恶意网站,攻击者会发布诸如红包、色情图片等,一旦用户点击就会进入恶意网页。(3)电子邮件。公开的电子邮件经常受到攻击者的青睐,恶意网页会给大量的目标用户发送有吸引力的邮件,目标用户一旦点击就会进入恶意站点。
上述攻击途径只是恶意网页的传播方式,它们的实现依赖于底层的恶意网页攻击技术。常见的恶意网页攻击技术包括[2]:Iframe攻击、目标重定向攻击、xss跨站脚本攻击,混淆代码攻击以及页面下载攻击等。
Iframe攻击指的是攻击者在用户查看的网页内嵌入使用恶意代码链接的页面,用户不能区分此恶意页面与期望访问的页面。因此,这种攻击方式具有一定的隐蔽性,用户难以察觉。在网页实现过程中可以通过多种方式嵌入Iframe,最常见的方式是借助document的write方法和getElementByID方法。在用户受到Iframe攻击后,其在网络页面中输入的各种信息,比如用户资料、资金账号及密码等都会被攻击者获取;另外,攻击者还可以在此基础上进行其他各种方式的攻击。Iframe攻击的典型特征是会使用Iframe标签,所以对JavaScript代码反混淆后如果发现含有ifame标签,则说明JavaScript代码可能有恶意代码。
目标重定向攻击指的是改变用户想要访问的目标页面,将其重定向到一个和目标页面非常相似的恶意页面。重定向功能的出发点在于缩短网址、避免网络页面出现断开链接等现象,但是常被攻击者用于重定向到恶意页面。重定向攻击是XSS等攻击方式的前提,和Iframe攻击有一定的相似性,只不过重定向攻击是直接到达一个新的恶意页面,Iframe攻击是在目标页面中嵌入一个恶意页面。网页重定向攻击也有多种实现方式,比如利用document的location方法或window的location方法。在對页面反混淆后,如果发现重定向方法就可以认为是存在重定向攻击。XSS攻击又称为跨站脚本攻击。有些网络页面中的动态功能没有严格区分页面内容及JavaScript代码,这样恶意页面中的动态内容就能够绕过同源策略攻击Web客户端[3]。如果Web应用没有进行严格的过滤或转义,那么恶意代码就有了用武之地。跨站脚本攻击最主要的目的是窃取Web客户端的缓存或会话信息。
应用代码在保持功能不变的前提下可以进行一定的变形,这就是常说的“混淆”。攻击者也常常会采取混淆的方式隐藏恶意代码,从而逃过安全工具的检查。只要静态分析工具不能检测出经过混淆的恶意代码,它就可以存活更长的时间。
2JavaScript攻击实例及其检测方法
在浏览器的版本比较旧的情况下,上面的代码会借助浏览器漏洞给代码中指定的img元素链接一个可执行文件,并将此元素隐藏起来;这样一来,即使用户加载了含有可执行程序的网页也不会发现,从而在用户感觉不到异常的情况下执行恶意代码。
一个典型的浏览器劫持攻击代码如下:
Hijack函
文档评论(0)