吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 4671|回复: 28

[原创逆向图文] 初识exe程序反汇编

  [复制链接]
A00 发表于 2014-10-6 14:27 | 显示全部楼层 |阅读模式


近期由于一个项目的需要,我初步接触了exe程序反汇编。折腾了好几天终于见到了那个程序中急需的算法的真面目了。回顾整个过程,小有感悟。为记念初识程序反汇编的心路历程,特记录下对程序反汇编过程的粗浅感受。

一、工作环境:
  1、查壳工具:PEiD(用于初步确定exe程序是否加壳以及使用何种开发软件编写);
  2、反编译工具:DeDe(经过查壳工具检查,将要被反汇编的程序是用“BorlandC++ 1999”编写的,所以选用专门反编译Delphi程序的DeDe;用于初步确定程序模块、函数方法划分对应exe程序相应汇编指令地址的位置);
  3、反汇编动态调试工具:OllyICE(即,OD;用于动态反汇编调试程序的相关代码逻辑);
  4、开发环境:VS.NET 2005;
  5、其他工具:EditPlus、记事本、计算器等若干;

二、基础知识:
  1、汇编程序设计:主要深入了解程序数据存放、堆栈使用、子程序调用等技巧;不同类型数据的地址跳转规则(一般都是跳转该类型长度个位置);
  2、c++程序设计:基本语法结构;指针、数据类型的使用和控制;
  3、相关工具软件的基本使用方法;

三、工作过程:
  我的反汇编大概过程是:
查壳->脱壳、判断开发程序使用的环境->反编译->初步定位主要功能模块或函数的汇编指令起始、终止地址->反汇编准备->查找程序中的特征字符串或特征值,进一步确定需要反汇编的代码逻辑的位置->开始反汇编调试运行,分析需要反汇编的代码逻辑的具体过程->将分析出来的逻辑流程使用c++语言实现。

1、 查壳:
运行PeiD,打开要反汇编的exe程序,在这里姑且称之为:test.exe吧。
如示意图1:

“多项扫描”上面那行“Microsoft Visual C++ 7.0 Dll Method 3”就是该程序的开发环境了。
接下来电击窗口右下角的“>>”按钮,再来看看该程序是否加壳,如示意图2:

分别点击“熵值”、“EP校验”、“快速校验”这三行最右侧的“-”按钮,就可以看到是否加壳的提示了。
哈哈,test.exe程序太干净了。没有任何加壳,可以选用相应的反编译工具进行下一步啦。  ^_^

2、 反编译:
“1、”中只是示意图,我实际反编译的程序是由“BorlandC++ 1999”编写的,所以选择DeDe 3.5作为反编译工具;DeDe3.5的具体使用方法,请自行在网上查阅。
示意图3:


3、 初步定位主要模块、函数对应的汇编指令地址:
根据反编译出来的部分类和方法的代码框架,确定了两组可疑的汇编指令地址段。
如示意图4:

注意选择“过程”按钮,如上图所示。然后双击右下侧列表中的Button3Click,就可以查看该方法对应的函数体了。当然,这样看到的函数体不会是我们一般意义上的函数体,这函数体只有一个框架是高级语言的样子,函数体内部都是汇编代码,不过这已经足够了,后面我们还要进行详细的反汇编调试分析呢。嘿嘿。函数体示意图5如下:
  
好,记下这段函数的首地址、尾地址,开始尝试反汇编操作。

4、 反汇编准备:
使用OD(OllyICE)打开test.exe程序,如示意图6:
  
找到刚才记录下的首地址、尾地址。如上图中两个黑圆点处的红条,分别是首地址:00401EC4、尾地址:00401EF5。

5、 反汇编调试:
根据步骤4中定位的汇编指令地址,再结合示意图6中[ASCII”Hello OD”]、[ASCII”this is OllyDbg DeAsm”]等关键字符串,进行所有匹配字符串的检索,就可以开始使用OD进行调试了。具体使用方法请参阅OD自带的help文件。
逐句分析所需部分的汇编代码逻辑流程。其间可以用其他一些FZ工具来帮助记录动态分析过程中的数值传递轨迹及变换方法。

6、 C++实现:
根据分析出的汇编代码逻辑,使用C++实现同样的功能。

评分

参与人数 41HB +43 THX +16 收起 理由
Y-sir + 1 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
wwr21 + 1
小洋爱学习 + 2 + 1
花盗睡鼠 + 2 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
29590 + 1
虚心学习 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
24567 + 1
机械师三三三 + 1
sjtkxy + 1 + 1
Jawon + 1
一路走来不容易 + 1
zxjzzh + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
WolfKing + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
Soul1999 + 1
冷亦飞 + 1
纯英文 + 1
沉默的承诺 + 1
pygicx + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
三月十六 + 1
LDR + 2 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
l278785481 + 1
小菜虫 + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
玖霊後 + 1
SmallEXpel + 1
我是好人 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
weiran324 + 1 [吾爱汇编论坛52HB.COM]-吃水不忘打井人,给个评分懂感恩!
zyyujq + 1
雷神来了 + 2 + 1
ghostxu + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
ldljlzw + 1
szukodf + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
liugu0hai + 1 [吾爱汇编论坛52HB.COM]-感谢楼主热心分享,小小评分不成敬意!
6378895 + 2 + 1 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
消逝的过去 + 2 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
baky1223 + 2 [吾爱汇编论坛52HB.COM]-软件反汇编逆向分析,软件安全必不可少!
jaunic + 1
hnymsh + 1
lies + 1
大鸿 + 1 积极评分从我做起,感谢!
Crack杰 + 5 积极评分从我做起,感谢!
zx2cwf + 1 + 1 支持原创,感谢楼主!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
我必须_说谎 发表于 2014-10-6 14:34 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
zx2cwf 发表于 2014-10-6 15:58 | 显示全部楼层

排版的不错  感谢!!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Dean 发表于 2014-10-11 16:03 | 显示全部楼层

额,基本没看懂。。。。。。也不知道是没说什么太深的内容,还是说了我没理解
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
帮助别人 发表于 2014-11-18 17:31 | 显示全部楼层




没有图的反汇编,新手真看的头疼啊。
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
hackysh 发表于 2022-2-18 09:59 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
6378895 发表于 2022-3-15 13:36 | 显示全部楼层

学习啊.感谢了
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
ghostxu 发表于 2022-4-10 00:01 | 显示全部楼层

全论坛发来贺电
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
雷神来了 发表于 2022-4-27 19:56 | 显示全部楼层


[快捷回复]-软件反汇编逆向分析,软件安全必不可少!
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
weiran324 发表于 2022-4-27 22:44 | 显示全部楼层

谢谢分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表