damgda 发表于 2010-8-7 14:02

手动速脱未知壳。。。

本帖最后由 damgda 于 2010-8-16 22:38 编辑

今天逛游论坛看到有人发帖子求助脱壳,居然还是看雪的crackme。。。

不过文件名是unpackme。难道看雪出过脱壳的专题?有知情的朋友给个下载地址吧,我也好学习一下。

小弟不胜感激!


peid和die查壳均发现未知,区段竟然是个<。。。





OD载入,f9程序直接运行了,还好没有暗桩。。。

ctrl+f2重载程序,f8两步后esp变化,右击数据窗口跟随,下硬件读取断点-word

两次shift+f9后来到了一处可疑的oep。。。

004C71C1- E9 3AEEFFFF   JMP UpackMe_.004C6000

可是跳过去发现程序还在不断的跳呀跳的。。。dump出来也不能运行⊙﹏⊙

没耐心,直接alt+m打开内存窗口,找到sfx




命令行下tc eip<00525000

shift+f92次,然后f8两次后到达oep
有朋友跟帖说模拟跟踪法没法到达oep。。。确实有的用不同的od可能会有这样的问题,大家这里第二步可以不用模拟跟踪,直接f8单步往下走,很快也可以到达oep的

00485EC8    55            PUSH EBP------------------------real oep
00485EC9    8BEC            MOV EBP,ESP
00485ECB    83C4 F0         ADD ESP,-10
00485ECE    B8 505C4800   MOV EAX,UpackMe_.00485C50
00485ED3    E8 D402F8FF   CALL UpackMe_.004061AC
00485ED8    A1 0C744800   MOV EAX,DWORD PTR DS:
00485EDD    8B00            MOV EAX,DWORD PTR DS:
00485EDF    E8 DC2DFDFF   CALL UpackMe_.00458CC0
00485EE4    8B0D 30734800   MOV ECX,DWORD PTR DS:                     ; UpackMe_.00488D00
00485EEA    A1 0C744800   MOV EAX,DWORD PTR DS:
00485EEF    8B00            MOV EAX,DWORD PTR DS:
00485EF1    8B15 0C4D4800   MOV EDX,DWORD PTR DS:                     ; UpackMe_.00484D58
00485EF7    E8 DC2DFDFF   CALL UpackMe_.00458CD8

lordpe dump出来后直接重建输入表




很幸运,没有无效函数。。。修复一下转存。。。搞定





补充:
这个crackme带有防破解的校检。
00484AEC   /EB 2E         JMP SHORT dump.00484B1C
00484AEE   |8B03            MOV EAX,DWORD PTR DS:
00484AF0   |E8 F7FEFFFF   CALL dump.004849EC
00484AF5   |85C0            TEST EAX,EAX
00484AF7   |74 20         JE SHORT dump.00484B19 -------------------------------检测
00484AF9   |8038 CC         CMP BYTE PTR DS:,0CC
00484AFC   |75 1B         JNZ SHORT dump.00484B19------------------------------检测
00484AFE   |55            PUSH EBP
00484AFF   |6A 0F         PUSH 0F
00484B01   |68 6C4A4800   PUSH dump.00484A6C
00484B06   |8B07            MOV EAX,DWORD PTR DS:
00484B08   |E8 DFFEFFFF   CALL dump.004849EC
00484B0D   |50            PUSH EAX
00484B0E   |E8 2519F8FF   CALL <JMP.&kernel32.GetCurrentProcess>
00484B13   |50            PUSH EAX
00484B14   |E8 B71AF8FF   CALL <JMP.&kernel32.WriteProcessMemory>
00484B19   |83C3 04         ADD EBX,4
00484B1C   \85DB            TEST EBX,EBX

直接成jmpSHORT dump.00484B19 即可搞定校检

剩下的破解就很简单啦

向该程序作者致敬,防破解很有意思









wanynal 发表于 2010-8-7 14:06

学习学习 谢了先

q370399412 发表于 2010-8-7 14:07

支持支持,谢谢LZ

damgda 发表于 2010-8-7 14:23

回复 2# wanynal


回复 3# q370399412


客气客气,初学乍练。。。

damgda 发表于 2010-8-7 14:24

回复 4# a578454887


我从来不破解挂挂。。。那些一般都好变态的呢,不适合新手

674428731 发表于 2010-8-7 14:40

damgda 发表于 2010-8-7 14:41

回复 7# 674428731


    呵呵,过奖啦,我也是新手哦

davg 发表于 2010-8-7 22:11

顶呀!!!支持

.oO 发表于 2010-8-7 22:14

来看看

A20972764 发表于 2010-8-8 11:38

支持LZ
页: [1] 2 3 4 5 6 7 8
查看完整版本: 手动速脱未知壳。。。