IDA+OD双剑合璧=逆向无敌

准备工具: ollydbg  ida   vs2012  

---------------------------------
我们先把目标程序winasm_0.exe拖入peid 
主界面


那我们去输入表看看
 


也好像没什么特别值得关注的。

、那好 简单测试下程序   看有什么状况发生 


看 弹出对话框 那我们该想到什么?API断点!messagebox相关!

不急我们把它拖入OD  直接ctrl+A分析


入口点:


习惯性的我把它上下一翻、发现:


这不是我们要找的字符串吗?(
PS:
如果我没翻到 步骤应该会是:


  • 搜索字符串
  • 下API断点
  • 其它...



我们截取关键代码分析:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CPU Disasm
地址        十六进制数据            指令                                       Profile  Comments
     获取输入内容
00401066  |.  E8 BF000000   CALL <JMP.&USER32.GetDlgItemTextA>       ;           \USER32.GetDlgItemTextA
0040106B      A3 13114000   MOV DWORD PTR DS:[401113],EAX            ;           MOV DWORD PTR DS:[401113],EAX
比较eax
00401070  |.  83F8 05       CMP EAX,5                                ;
00401073  |.  75 13         JNE SHORT 00401088                       ;
比较 fubar?
00401075  |.  BE 2A334000   MOV ESI,OFFSET 0040332A                  ;
0040107A  |.  BF 41304000   MOV EDI,OFFSET 00403041                  ;           ASCII  "fubar"
0040107F  |.  B9 06000000   MOV ECX,6                                ;
00401084  |.  F3:A6         REPE CMPS BYTE PTR DS:[ESI],BYTE PTR ES: ;           
看ZF标志以决定转移与否
00401086  |.  74 19         JE SHORT 004010A1                        ;
00401088  |>  6A 00         PUSH 0                                   ;            /Type  = MB_OK|MB_DEFBUTTON1|MB_APPLMODAL
0040108A  |.  68 1F334000   PUSH OFFSET 0040331F                     ;           |Caption =  " try again"
0040108F  |.  68 0F334000   PUSH OFFSET 0040330F                     ;           |Text =  "no, not really."
00401094  |.  6A 00         PUSH 0                                   ;           |hOwner = NULL
00401096  |.  E8 95000000   CALL <JMP.&USER32.MessageBoxA>           ;           \USER32.MessageBoxA
0040109B  |.  33C0          XOR EAX,EAX                              ;
0040109D  |.  C9            LEAVE                                    ;
0040109E  |.  C2 1000       RETN 10                                  ;



那好 我们暂且就这样分析 在地址00401066 处F2断点   F9运行!
那此时肯定会弹出对话框  我们随便输入点什么 以”15PB“为例  再点击check
会在刚刚所设断点处停下来:

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值