networkedition - 2010-3-31 10:57:00
在这里就讲解一下,解密的技巧吧。 首先,源代码中很乱,有很多的空格字符,实际上是终止符(00),需要整理一下源代码,提供一个快速代码的方法,使用winhex工具来进行替换,此方法由小聪大牛提供。
使用winhex工具打开要解密的代码,截图如下:
源代码在11楼有下载用户系统信息:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2)
networkedition - 2010-3-31 11:06:00
networkedition - 2010-3-31 11:11:00
替换完成后可以将代码另存为即可。
networkedition - 2010-3-31 11:19:00
分析一下整理后代码,里面有个document.write函数,由于代码太长,不建议使用将document.write替换为alert的方法(有截断代码现象),使用textarea这个文本区域的html标签,将代码执行后,执行结果在文本区域内显示出来。
networkedition - 2010-3-31 13:08:00
在整理好的代码头部和尾部分别添加如下代码:
完整代码见附件,直接打开附件里的网页,并允许执行被阻止的脚本或activex控件,可以看到执行后代码被输出值文本区域。textarea标签使用方法参考html教程,这里就不详细讲解了。
附件:
jf1.rar
networkedition - 2010-3-31 13:18:00
执行结果详见下图:
ok,有我们非常熟悉的东西,unescape后面的一串是shellcode。接下来我们使用freshow或redoce工具来解密这段shellcode,发现无法解密出,使用freshow的enumxor无法枚举出网马地址。无固定XOR,在这里就需要考虑使用od来调试shellcode,得出最终的网马地址。
networkedition - 2010-3-31 13:25:00
下面讲解一下如何来调试shellcode,我们使用redcoe工具的执行下的:9>ShellCode至Exe,将shellcode生成为exe程序后,载入od进行调试。具体操作方法见下图:
networkedition - 2010-3-31 13:42:00
networkedition - 2010-3-31 13:46:00
通过以上方法生成exe程序后,将其载入至od里。在这里就不讲解如何来调试了,无非就是F7+F8一步一步来跟。最终的调试结果见下图:
Cool_wXd - 2010-3-31 13:55:00
膜拜版主~~~
networkedition - 2010-3-31 14:04:00
FCOME - 2010-3-31 14:23:00
终于可以看到啦
孔子的文章就是不错啊
zxl0222 - 2010-3-31 14:25:00
先回帖,再学习!
wanmimi - 2010-3-31 17:46:00
非常不错!支持!
yishuad - 2010-4-3 12:32:00
版主真厉害!:kaka1:
tonnys - 2010-8-31 12:55:00
膜拜楼主。
© 2000 - 2024 Rising Corp. Ltd.