安全中国首页 > 文章中心 > 脱壳技术
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

手动脱壳进阶第九篇Acprotect1.09(图)

更新时间:2008-4-20 0:20:09
责任编辑:阿loosen
热 点:
【脱文作者】 weiyi75[Dfcg]

【作者邮箱】 weiyi75@sohu.com

【作者主页】 Dfcg官方大本营

【使用工具】 Ollydbg1.09反Kill版,Imprec1.42

【破解平台】 Win2000/XP

【软件名称】 Acprotect1.09加壳的Win98的记事本,选择了所有的Antidbg选项。

【下载地址】 本地下载

【软件简介】:ACProtect is an application that allows you to protect Windows executable files against piracy,using public keys encryption algorithms (RSA) to create and verify the registration keys and unlock some RSA key locked code,it has embedded cryptor against dump and unpacker.it also has many anti debug tricks.  And you can use it to  create  evaluation and trial application versions. with specialized API system, mutual communication between loader and application is also can be achieved.

截图



【软件大小】 125k

【加壳方式】 UltraProtect 1.x -> RISCO Software Inc.

【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)

--------------------------------------------------------------------------------

【破解内容】
Od设置不忽略内存异常,其余异常全部忽略。

载入程序,插件隐藏Od。

0040D000 >  60              PUSHAD  入口。
0040D001    FC              CLD
0040D002    87FE            XCHG ESI,EDI
0040D004    66:C1CE A5      ROR SI,0A5                               ; 移动常数超出 1..31 的范围
0040D008    66:13F0         ADC SI,AX
0040D00B    7E 03           JLE SHORT NOTEPAD.0040D010
0040D00D    7F 01           JG SHORT NOTEPAD.0040D010
0040D00F  - EB BF           JMP SHORT NOTEPAD.0040CFD0
0040D011    C7              ???                                      ; 未知命令
0040D012    F2:             PREFIX REPNE:                            ; 多余的前缀X REP
0040D013    EB 5E           JMP SHORT NOTEPAD.0040D073
0040D015    E8 01000000     CALL NOTEPAD.0040D01B
0040D01A  - 76 83           JBE SHORT NOTEPAD.0040CF9F
...................................................................

基本思路,利用Seh最后一次异常找OEP,这里经过多次试验决定选择不忽略内存异常。
最后一次内存异常

0041308E    CD 01           INT 1
00413090    40              INC EAX
00413091    40              INC EAX
00413092    0BC0            OR EAX,EAX
00413094    0F85 B6000000   JNZ NOTEPAD.00413150
0041309A    60              PUSHAD
0041309B    8DBD 36B74100   LEA EDI,DWORD PTR SS:[EBP+41B736]
004130A1    4F              DEC EDI
004130A2    8D8D 70BE4100   LEA ECX,DWORD PTR SS:[EBP+41BE70]
004130A8    83C1 02         ADD ECX,2
004130AB    2BCF            SUB ECX,EDI
004130AD    C1E9 02         SHR ECX,2
004130B0    E8 49D8FFFF     CALL NOTEPAD.004108FE
004130B5    AB              STOS DWORD PTR ES:[EDI]
004130B6  ^ E2 F8           LOOPD SHORT NOTEPAD.004130B0
004130B8    61              POPAD
004130B9    60              PUSHAD
004130BA    E8 92DAFFFF     CALL NOTEPAD.00410B51
...................................................................

可以单步跟踪到入口点,很慢的。这里我选择了内存Code段镜像断点。

Alt+M

下401000处Code段内存访问断点,见截图,F9运行后中断。

1 2 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画