IDA 初步视频教程 继续解包,混淆代码的静态分析方法
-
相关简介:IDA 初步视频教程 继续解包,混淆代码的静态分析方法 这是一个对抗IDA Pro分析的程序为目标,在实际中我们经常可以遇到这类的程序,而对抗混淆也是反汇编调试的基本功,作为入门我们首先需要掌握的就是这些,以下为本视频中的文字内容 --------------------------- 接续上一个视频,在上一个视频中我们通过对UPX的解包知道了脱壳时大段间转跳是一个关键点,而且很容易就可以用转跳时停止程序来抓取内存镜像的方式来实施手工脱壳,在这视频中我们用一个专门针对和破坏IDA Pro分析的例
-
文章来源:股海网作者:股海网发布时间:2012-05-09浏览次数:
IDA 初步视频教程 继续解包,混淆代码的静态分析方法
这是一个对抗IDA Pro分析的程序为目标,在实际中我们经常可以遇到这类的程序,而对抗混淆也是反汇编调试的基本功,作为入门我们首先需要掌握的就是这些,以下为本视频中的文字内容
---------------------------
接续上一个视频,在上一个视频中我们通过对UPX的解包知道了脱壳时大段间转跳是一个关键点,而且很容易就可以用转跳时停止程序来抓取内存镜像的方式来实施手工脱壳,在这视频中我们用一个专门针对和破坏IDA Pro分析的例子程序来讲述延续内存DUMP方式来解包,以及一种静态分析加密代码的混淆方式并且得倒所需入口的方式,同时比较了什么时候用硬中断什么时候用普通中断
例子中所用到的程序可以到hex-rays的官网下载到,也可以到理想论坛里找到下载;特别注意例子程序可能会被报毒,但实际是无害的,但是不管怎样在来路不明的程序前在虚拟机里来做测试是最好的办法
第一次加载我们按默认的方式
自动分析完后出来一个奇怪的反汇编内容
总不至于是其他的,肯定是代码,将看不懂的咚咚按"C"键转成代码
原来开始就是转跳,双击代码居然没有反应,找不到该去的地方
怎么办? 酱油拌稀饭,启动调试呗,F9 弹出选择调试器对话框,
然后......F2,让它启动就停止(哦,当然这很野蛮,其他地方有选择的好伐,以后,以后再说,现在是初步不是?) F9 运行.....
F8到下一步
好的,正式的解码代码出来了,当然还不能停,我们必须让他自动解码完成不是
坑爹,没有图形框图,这可不是好主意,按“P”键,
找下IDA Pro自动分析失败的地方吧,上个视频中那个点就是脱壳的关键点哦,想必这次运气也不会很惨的
有了,而且这个函数里只有这一个出口点,不是它还有谁,继续野蛮F2断掉它
看到没,ESP定律是那么的伟大,虽然这次我们没有用它来干活
好吧,继续F8
真实的代码出来了
这次具体讲讲在IDA Pro里找到IAT的方法
明显的嘛 00402000-00402050之间就是了
接下来就是老一套了,跟上个视频的操作没有区别,当成是占用视频时间吧,
这里提个醒,ESC键是可以返回到上一画面的,尽情的ESC吧
现在主要是要看看在静态方式下,如何将被混淆的代码还原
注意选项,手工管理加载和引入表段的不要
转换为代码后,好像不同的地方出来了,居然有了红箭头可以到下一步了耶
但是好像看不懂?
过去看看,一塌糊涂的数据
用“U”键取消IDA Pro的自做主张,然后用“C”还我代码
一路整理完成......
创建函数以利于分析,同样过程,这静态分析后,我们也找到了关键点
虽然此时有很多方法对程序解码,但在此我们依然用了调试程序来获取内存的方法,唯有不同的是,前面是一路用调试程序跟过来,而这次是用静态分析到达此处,那么要是现在在关键点直接F2下普通断点肯定停不下来,所以用了硬断点,
又是视频欣赏时间
-------------------
视频中用到的例子程序,注意有可能报毒,所以请确保你是否需要下载
==================================
第三集:IDA初步视频教程:通过UPX简单的脱壳演示IDB数据操作
{原文链接:http://www.guhai.com.cn/html/GJ/soft-tech/13719.html}
第二集:IDA(Ida_install)初步配置视频教程
{原文链接:http://www.guhai.com.cn/html/ZGSJ/shipin-tech/13533.html}
第一集:IDA(Ida_install)初步视频教程