这话要从半个月前说起
那日在坛子里下了脱壳的艺术,看完后颇有感悟,从网上随便抽起一个软件,开膛破肚
首先问人家有没有加壳PEID
显示PECompact 2.x -> Jeremy Collake [Overlay]
心里一个高兴,因为以前有过这个脚本,懒得动手,直接上脚本,一下来到OEP直接DUMP
看看还能运行
乐呀!!
可是两分钟后,我乐不起来了,里面有一个按钮不能用,怪了,脱壳前能用呀,难道是保护,还是脱壳不完整!!
分步来,先修复看行不行,这一修,修出麻烦来了,查壳工具死活不认,深度探测Borland Delphi 4.0 - 5.0
OD载入看一下
00401000 > 04 10 add al,10 /停在这里
00401002 40 inc eax
00401003 0003 add byte ptr ds:[ebx],al
00401005 07 pop es
00401006 42 inc edx
00401007 6F outs dx,dword ptr es:[edi]
00401008 6F outs dx,dword ptr es:[edi]
00401009 6C ins byte ptr es:[edi],dx
这下郁闷了,刚才入口还好好的,看看区段多了两个
这个这个……
再脱一下,我断那个按钮事件看看
DEDE也拉上来干活
能正常反编译,找到那个按钮地址,下断运行,程序自动退出……
自效验??自效验我知道的方法都用完了,没效果。
ANTI DEBUGGER??
拿起其它的调试工具,找个没名的,再上
10001EE3 . 8908 MOV DWORD PTR DS:[EAX],ECX//这回在这了
10001EE5 . 50 PUSH EAX
10001EE6 . 45 INC EBP
10001EE7 . 43 INC EBX
10001EE8 . 6F OUTS DX,DWORD PTR ES:[EDI] ; I/O command
10001EE9 . 6D INS DWORD PTR ES:[EDI],DX ; I/O command
10001EEA . 70 61 JO SHORT NTFSys.10001F4D
10001EEC . 637432 00 ARPL WORD PTR DS:[EDX+ESI],SI
10001EF0 . 8BFA MOV EDI,EDX
10001EF2 . EB 04 JMP SHORT NTFSys.10001EF8
10001EF4 01 DB 01
10001EF5 > 37 AAA
10001EF6 . 95 XCHG EAX,EBP
10001EF7 . EE OUT DX,AL ; I/O command
10001EF8 > 83E7 00 AND EDI,0
10001EFB . 7E 0C JLE SHORT NTFSys.10001F09
10001EFD . F2: PREFIX REPNE: ; Superfluous prefix
10001EFE . CA 7D09 RETF 97D ; Far return
10001F01 50 DB 50 ; CHAR 'P'
我找找有没有反调试的啥的,一点一点摸,一无所获(菜呀)
看了一下PE结构唉,看也是白看又不懂装啥呀
拿上来各位给分析一下看我哪里出错了
[ATTACH]
[/ATTACH]
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!