cater 发表于 2007-12-1 20:55:35

我oep 设到 0051317C
显示有SPLayer 0.08 -> Jibz
为此我绕了两个多小时“脱壳”

吐血.........
为什么就没有想到 重新整合一下呢~/:010 /:010 /:010 /:010

hyd009 还在 哦~
呵呵~


a__P 我终于找到解决进程隐藏的方法了


另类脱壳方法

对抗调试

1. OD 加载出错


2. LoadPE,ImprotRec,任务管理器隐藏进程


对策

1. 针对 OD 加载错误,我们可以使用OD插件 强烈支持使用海牛哥哥 StrongOD 或者 Phant0m.dll
   尽管用了插件,我们可以直接用od转存 脱壳文件,但是感觉插件不是太稳定,我还是喜欢用土方法,LoadPE 抓取,IMprotrec 修复ita
2. 针对隐藏 进程我们可以追查源头
   原因出在 PYG.dll,是TMD 的,隐藏进程定是它做的手脚


解决隐藏进程
1. 查看 1.exe 的输入表,里面有个对 PYG.DLL里面K 函数的调用,个人感觉有鬼
   我们 手动制作一个 PYG.DLL 吧
   写 DLL 我不会,我还是找个DLL 的输出表。这里选用PEID 插件 crc32.dll
   修改 DoMyJob 为小写 k 保存文件名为 PYG.DLL 到 1.exe 文件目录


2. 运行看看
   1.exe 程序 可以运行,进程可以显示了


脱壳程序

由于 不用加载原来 TMD 马甲的 PYG.DLL ,一切麻烦变地简单许多

1 .OD 加载
AsPack 外壳

00514001 >60            PUSHAD
00514002    E8 03000000   CALL 1.0051400A
00514007- E9 EB045D45   JMP 45AE44F7
0051400C    55            PUSH EBP
0051400D    C3            RETN
0051400E    E8 01000000   CALL 1.00514014
00514013    EB 5D         JMP SHORT 1.00514072
00514015    BB EDFFFFFF   MOV EBX,-13
0051401A    03DD            ADD EBX,EBP
0051401C    81EB 00401100   SUB EBX,114000
00514022    83BD 22040000 0>CMP DWORD PTR SS:,0
00514029    899D 22040000   MOV DWORD PTR SS:,EBX
0051402F    0F85 65030000   JNZ 1.0051439A                           ; 去 51439A 看看
00514035    8D85 2E040000   LEA EAX,DWORD PTR SS:


☆ 0051439A

0051439A    B8 A3311100   MOV EAX,1131A3
0051439F    50            PUSH EAX
005143A0    0385 22040000   ADD EAX,DWORD PTR SS:
005143A6    59            POP ECX
005143A7    0BC9            OR ECX,ECX
005143A9    8985 A8030000   MOV DWORD PTR SS:,EAX
005143AF    61            POPAD
005143B0    75 08         JNZ SHORT 1.005143BA
005143B2    B8 01000000   MOV EAX,1
005143B7    C2 0C00         RETN 0C
005143BA    68 00000000   PUSH 0
005143BF    C3            RETN                                     ; 典型 AsPack 出口,F4过来,F8
005143C0    8B85 26040000   MOV EAX,DWORD PTR SS:

二层外壳
005131A3    90            NOP                                    ;OEP,外层壳
005131A4    90            NOP
005131A5    90            NOP
005131A6    90            NOP
005131A7    90            NOP
005131A8    90            NOP
005131A9    B8 7C315100   MOV EAX,1.0051317C
005131AE    FFE0            JMP EAX
005131B0    BA 7C315100   MOV EDX,1.0051317C
005131B5    90            NOP
005131B6    90            NOP
005131B7    90            NOP
005131B8    90            NOP
005131B9    B8 08CDD6B1   MOV EAX,B1D6CD08
005131BE    8902            MOV DWORD PTR DS:,EAX
005131C0    83C2 04         ADD EDX,4
005131C3    B8 CDDE99AD   MOV EAX,AD99DECD
005131C8    8902            MOV DWORD PTR DS:,EAX
005131CA    B8 8C315100   MOV EAX,1.0051318C
005131CF    90            NOP
005131D0    90            NOP
005131D1    90            NOP
005131D2    90            NOP
005131D3    FFE0            JMP EAX

F8+F4 很快来到 抽走的代码

0051317C    55            PUSH EBP                     ; 忽悠我两个小时的“马甲”伪OEP
0051317D    90            NOP
0051317E    8BEC            MOV EBP,ESP
00513180    90            NOP
00513181    83C4 F0         ADD ESP,-10
00513184    90            NOP
00513185    B8 BEAF4800   MOV EAX,1.0048AFBE
0051318A- FFE0            JMP EAX                        ; 1.0048AFBE

下面就是 头
0048AFBE      B8            DB B8
0048AFBF      78AC4800      DD 1.0048AC78
0048AFC3      E8            DB E8
0048AFC4      D0            DB D0
0048AFC5   .B3 F7         MOV BL,0F7
0048AFC7   .FFA1 08DA4800 JMP DWORD PTR DS:

我们还是修复下抽走的头
558BEC83C4F0


0048AFB8    55            PUSH EBP                     ; OEP ,修复了抽走的代码
0048AFB9    8BEC            MOV EBP,ESP
0048AFBB    83C4 F0         ADD ESP,-10
0048AFBE    B8 78AC4800   MOV EAX,1.0048AC78
0048AFC3    E8 D0B3F7FF   CALL 1.00406398

2. LoadPe 转存+ ImportREC 修复




3. 优化脱壳文件
我不会,还是简单删除几个区段好了。。。。。。。。。。



嘿嘿至此我们的1.exe 文件脱壳完毕,脱壳后的程序不在依赖 PYG.DLL 文件

这个是我脱好的



dIy 的 PYG.DlL



StrongOD od插件


Cater QQ:24882688 2007.12.01

[ 本帖最后由 cater 于 2007-12-2 11:14 编辑 ]

wan 发表于 2007-12-1 21:04:06

壳盲完全不懂啊,只知是竞赛非竟赛/:001

yingfeng 发表于 2007-12-1 21:16:07

我也是壳盲,呵呵,纯支持一下,呵呵,

至于OEP,反正是游戏,呵呵,不一定非得在程序入口处,呵呵,

能正常运行就行,何必在乎?/:0177" />

不过ABCdiyPE补的代码反而有错误,呵呵,

退出会有错误

[ 本帖最后由 yingfeng 于 2007-12-1 21:18 编辑 ]

风间仁 发表于 2007-12-1 21:36:07

也是壳盲,好像到OEP不修复也能运行。

jjdg 发表于 2007-12-1 21:59:00

不是吧!
我的OD根本就载入不了!更别说脱了!
Themida的啊!
如图!

assume 发表于 2007-12-1 22:11:55

原帖由 jjdg 于 2007-12-1 21:59 发表 https://www.chinapyg.com/images/common/back.gif
不是吧!
我的OD根本就载入不了!更别说脱了!
Themida的啊!
如图!
我跟楼上一定不能载入,继续学习

cater 发表于 2007-12-2 00:14:04

刚写好教程,宿舍就断网了…
明天大早我贴个原创…

qiujincong 发表于 2007-12-2 09:12:46

都很厉害哦 /:018

small-q 发表于 2007-12-2 09:39:58

7楼请及时联系QQ拿礼物!!

hdy981 发表于 2007-12-2 10:51:21

原帖由 jjdg 于 2007-12-1 21:59 发表 https://www.chinapyg.com/images/common/back.gif
不是吧!
我的OD根本就载入不了!更别说脱了!
Themida的啊!
如图!
隐藏OD试试
页: 1 [2] 3 4 5 6
查看完整版本: 【PYG3周年庆典活动之一】脱壳竟赛第一章