好友
阅读权限80
听众
最后登录1970-1-1
|
楼主
烟99
发表于 2026-2-1 17:58
1000吾爱币
本帖最后由 烟99 于 2026-2-1 18:02 编辑
如图这款软件
样本:https://wwava.lanzoub.com/iHptQ3hizmhi
![]()
![]()
想买正版,但是作者跑路
![]()
开始破解
先查壳脱壳
壳体是
![]()
然后上x32dbg,定住第一层pushad,上ESP定律,接着F9
![]()
来到我能抓到的第二层pushad,上ESP定律,接着F9
![]()
再按F9,来到了下面这里
[Asm] 纯文本查看 复制代码 005AF56B | 83C4 04 | add esp,4 |
005AF56E | 55 | push ebp |
005AF56F | 8BEC | mov ebp,esp |
005AF571 | 83C4 94 | add esp,FFFFFF94 |
005AF574 | 53 | push ebx |
005AF575 | 56 | push esi | esi:EntryPoint
005AF576 | 57 | push edi | edi:EntryPoint
005AF577 | 33D2 | xor edx,edx | edx:EntryPoint
005AF579 | 8955 C8 | mov dword ptr ss:[ebp-38],edx | edx:EntryPoint
005AF57C | 8955 CC | mov dword ptr ss:[ebp-34],edx | edx:EntryPoint
005AF57F | 8955 D0 | mov dword ptr ss:[ebp-30],edx | edx:EntryPoint
005AF582 | 8955 D4 | mov dword ptr ss:[ebp-2C],edx | edx:EntryPoint
005AF585 | 8955 D8 | mov dword ptr ss:[ebp-28],edx | edx:EntryPoint
005AF588 | 8955 DC | mov dword ptr ss:[ebp-24],edx | edx:EntryPoint
005AF58B | 8955 E0 | mov dword ptr ss:[ebp-20],edx | edx:EntryPoint
005AF58E | 8955 E4 | mov dword ptr ss:[ebp-1C],edx | edx:EntryPoint
005AF591 | 8955 E8 | mov dword ptr ss:[ebp-18],edx | edx:EntryPoint
005AF594 | 8955 EC | mov dword ptr ss:[ebp-14],edx | [ebp-14]:"IMGTOPRIGHT", edx:EntryPoint
005AF597 | 81E9 00001000 | sub ecx,100000 | ecx:"IMGTOPRIGHT"
005AF59D | 8BD1 | mov edx,ecx | edx:EntryPoint, ecx:"IMGTOPRIGHT"
005AF59F | FFD2 | call edx | edx:EntryPoint
这里call了EDX,此时EDX指向的就是4xxxxx开头区域
![]()
看着应该是成功到达OEP了,push edx是标准的delphi开头
现在最棘手的是IAT,从005B1010处下硬件断点,此时005B1010仍然是假的内容,F9继续,先是去了404EAC
![]()
然后去了005AE1B9
![]()
读了@ICEY 大佬的文章,也喂给了AI去读,意思是关注一下附近有没有cmp byte ptr ds:[xxx], 0x0这样的指令,来执行Magic JMP,往上翻,并没有,说明ZPorect已经动态改写了,我重载程序,然后从005AE1B9下硬件断点,直接触发反调试,AI乱指挥,总是卡在这里不动了,应该怎么突破,如何寻找方向。
求大佬解答!!!!
这是内存布局
![]()
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|
|