吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3152|回复: 7
收起左侧

[分享] 手脱ACProtect v1.35(有Stolen Code)

  [复制链接]
Jian丶ylt 发表于 2015-11-15 04:23
声明:

       1.只为纪录自己成长历程,高手勿喷
       2.您的热心是新手持续发帖的动力

1.载入PEID

    ACProtect v1.35 -> risco software Inc. & Anticrack Soft
   
2.载入OD,需要注意的是,异常选项除了[内存访问异常]外其他全部勾选上,然后shift+F9运行至最后一次异常,是1次之后。第二次程序就跑飞了

[Asm] 纯文本查看 复制代码
00436000 >  60              pushad                            ; //入口
00436001    7C 03           jl short QQ个性签.00436006
00436003    7D 01           jge short QQ个性签.00436006
00436005    71 0B           jno short QQ个性签.00436012
00436007    C2 66C1         retn 0xC166
0043600A    D29E FC4566D3   rcr byte ptr ds:[esi-0x2C99BA04],>
00436010    D27403 75       sal byte ptr ds:[ebx+eax+0x75],cl
00436014    0177 66         add dword ptr ds:[edi+0x66],esi


3.落脚点,落脚后右键点堆栈窗口SE句柄---数据窗口跟随---数据窗口第一行下内存访问断点然后shift+F9

[Asm] 纯文本查看 复制代码
00447B1F    CD 01           int 0x1                           ; //落脚点
00447B21    40              inc eax
00447B22    40              inc eax
00447B23    0BC0            or eax,eax
00447B25    75 05           jnz short QQ个性签.00447B2C
00447B27    90              nop
00447B28    90              nop


[Asm] 纯文本查看 复制代码
0012FF44   00447B03  SE处理程序        //堆栈窗口


[Asm] 纯文本查看 复制代码
00447B03  0C245C8B                    //数据窗口第一行


4.落脚点,在落脚点下F2断点,然后shift+F9

[Asm] 纯文本查看 复制代码
00447B03    8B5C24 0C       mov ebx,dword ptr ss:[esp+0xC]    ; //落脚点
00447B07    8383 B8000000 0>add dword ptr ds:[ebx+0xB8],0x2
00447B0E    33C0            xor eax,eax
00447B10    C3              retn
00447B11    64:67:FF36 0000 push dword ptr fs:[0]
00447B17    64:67:8926 0000 mov dword ptr fs:[0],esp


5.落脚点,继续在这里下F2断点,然后shift+F9运行

[Asm] 纯文本查看 复制代码
00447B53    8B048E          mov eax,dword ptr ds:[esi+ecx*4]  ; //落脚点
00447B56    8B5C8E 04       mov ebx,dword ptr ds:[esi+ecx*4+0>
00447B5A    2BC3            sub eax,ebx
00447B5C    C1C0 07         rol eax,0x7
00447B5F    33C2            xor eax,edx
00447B61    81C2 4B3DF129   add edx,0x29F13D4B


6.落脚点,先清除刚刚下的2个F2断点和1个内存访问断点,然后在最近的retn处F4

[Asm] 纯文本查看 复制代码
00447B67    89048E          mov dword ptr ds:[esi+ecx*4],eax    ; //落脚点
00447B6A    49              dec ecx
00447B6B  ^ EB E1           jmp short QQ个性签.00447B4E
00447B6D    61              popad
00447B6E    61              popad
00447B6F    C3              retn                                ; //F4
00447B70    0000            add byte ptr ds:[eax],al


7.在无StolenCode的帖子中已经说过,正常情况下接下来是在内存窗口的401000处下段然后shift+F9运行就可以到OEP了,但是我们这个壳你这样操作后会发现OEP处的代码好像不对劲,因为被抽取过了,我们要做的是点[调试]按钮---设置条件,或者使用快捷键ctrl+T,在弹出来的界面勾选最下面一个然后输入被偷取的代码,我使用的ximo教程里的壳,被偷取的代码为"push ebp",输入完后点确定,然后使用快捷键ctrl+F11跟踪步入(或者点[调试]--跟踪步入)

8.找到了我们被偷取的代码,在这个壳中被偷取了三行代码,选中这三行,二进制复制

[Asm] 纯文本查看 复制代码
004254C8    61              popad
004254C9    55              push ebp                          ; //被偷取1
004254CA    8BEC            mov ebp,esp                       ; //被偷取2
004254CC    83EC 44         sub esp,0x44                      ; //被偷取3
004254CF    60              pushad
004254D0    60              pushad


[Asm] 纯文本查看 复制代码
55 8B EC 83 EC 44        //二进制复制出来的,一共6个字节


9.然后到内存窗口,在401000处下断F2,然后shift+F9运行来到假的OEP,向上找6个字节(看代码第二列,两位为一个字节),然后右键--二进制---使用nop填充,填充完毕后再数6个字节,然后使用二进制粘贴

[Asm] 纯文本查看 复制代码
004010D2    56              push esi
004010D3    FF15 E4634000   call dword ptr ds:[0x4063E4]      ; //假的OEP
004010D9    8BF0            mov esi,eax                       
004010DB    8A00            mov al,byte ptr ds:[eax]
004010DD    3C 22           cmp al,0x22
004010DF    75 1B           jnz short notepad9.004010FC
004010E1    56              push esi


10.此时OEP已经补充完整了,接着右键点'push ebp'哪一行---点[此处新建EIP]然后就可以脱壳了,脱壳注意[重建输出表]这一项不勾选,脱壳后使用ImportREC修复,我在脱壳的过程中出现过修复失败的情况,这种情况我一般都是用ImportREC上修复的插件或者别的版本的ImportREC来修复,可以都试试。

[Asm] 纯文本查看 复制代码
004010CC    55              push ebp
004010CD    8BEC            mov ebp,esp
004010CF    83EC 44         sub esp,0x44
004010D2    56              push esi
004010D3    FF15 E4634000   call dword ptr ds:[0x4063E4]      ; notepad9.0040D1BA
004010D9    8BF0            mov esi,eax                       ; kernel32.BaseThreadInitThunk
004010DB    8A00            mov al,byte ptr ds:[eax]
004010DD    3C 22           cmp al,0x22
004010DF    75 1B           jnz short notepad9.004010FC
004010E1    56              push esi


11.运行查壳

    运行OK,查壳:Microsoft Visual C++ v6.0 SPx





















免费评分

参与人数 1热心值 +1 收起 理由
Sound + 1 已经处理,感谢您对吾爱破解论坛的支持!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

慢慢的拼凑 发表于 2015-11-15 05:10
回帖是一种美德
耀哥@宋耀 发表于 2015-11-15 06:15
枫MapleLCG 发表于 2015-11-15 06:37
wgz001 发表于 2015-11-15 08:11
提个小小的建议,请把试炼品一并发到帖子下供别的小伙伴一起玩耍,谢谢
独行风云 发表于 2015-11-15 09:35 来自手机
感谢楼主分享
cloveryork123 发表于 2015-11-15 09:57
火钳刘明 继续更新哈
金巧 发表于 2015-11-16 21:43
看了好像会了,可还是只知其然,不知其所以然
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-17 15:50

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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