首页
社区
课程
招聘
[旧帖] [原创]Ultra RM Converter3.5.0411破解手记 0.00雪花
发表于: 2008-4-18 16:14 7819

[旧帖] [原创]Ultra RM Converter3.5.0411破解手记 0.00雪花

2008-4-18 16:14
7819
近日需将一rm转成mpeg,网上遍寻得此软件,可惜要注册收钱.祭出peid,检查为MoleBox v2.0壳,小子孤陋寡闻,未尝见过。好你个王八,以为披个马甲偶就认你是乌龟啊!立马调出windbg动态追踪,IDA静态排查,步骤如下:
用IDA载入该软件,不需要看反汇编结果,直接degugger菜单->start process,出一消息框,确认,程序就跑起来出现注册窗口了。随便填个用户名:MissileCat,密码:20080415,点确认,出错误用户消息框。
degugger菜单->take memory snapshot选all segments取内存影象。
结束程序。
IDA别关,开windbg
菜单启动Ultra RM Converter软件
命令: g 这时将出现注册窗口,点debug菜单->break断下程序
命令:bp peekmessagea "j(poi(poi(esp+4)+4)=0x201)'';'gc'"下消息断点,鼠标左键单击即断
命令:bp messageboxa 下对话框断点,出出错对话框即断
命令:g 继续运行
点用户名框准备输入用户名,此时会断下,不用管,再g,输入用户名:MissileCat,按tab继续输入密码:20080415 点注册,此时程序又断下,记下地址:
eax=00000001 ebx=77d1d7f9 ecx=00437c38 edx=0042d038 esi=0012ab4c edi=00000000
eip=77d1c96c esp=0012aab4 ebp=00437c6c iopl=0         nv up ei pl nz na po nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202
USER32!PeekMessageA:
77d1c96c 8bff            mov     edi,edi
命令:g 继续运行,此时又断:
eax=0043437c ebx=0012ab4c ecx=000806c4 edx=00ab0608 esi=0012ab4c edi=00437c38
eip=77d5058a esp=0012a434 ebp=0012abac iopl=0         nv up ei pl nz na po nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202
USER32!MessageBoxA:
77d5058a 8bff            mov     edi,edi
关键了,打开windbg汇编窗口跟进:
按shift+F11跳出过程,在Ultra RM Converter那边点确认后,将跳出messageboxa API
程序来到这儿:
73d8de1d ff15b065dd73    call    dword ptr [MFC42!_imp__MessageBoxA (73dd65b0)]
73d8de23 5e              pop     esi
73d8de24 c20c00          ret     0Ch
命令:s -a 1 0xfffffff "20080415" 查找密码地址
001576c8  32 30 30 38 30 34 31 35-00 00 00 00 00 00 00 00  20080415........
00373f38  32 30 30 38 30 34 31 35-00 f0 ad ba 0d f0 ad ba  20080415........
命令:ba r 1 0x373f38下断
点击错误对话框的确定后,再次点注册,在peekmessage中断后,会中断在这个位置
eax=0012a3c4 ebx=00000000 ecx=00000008 edx=7c92eb94 esi=000607e4 edi=00373f38
eip=77d32152 esp=0012a3ac ebp=0012a3d4 iopl=0         nv up ei pl nz na pe nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000206
USER32!GetWindowTextA+0x1f:
77d32152 8b4d08          mov     ecx,dword ptr [ebp+8] ss:0023:0012a3dc=000607e4
打开反汇编窗口,连续按几次shift+f11跳出几个dll调用来到用户区域:
00413007 83c664          add     esi,64h
看看反汇编情况为:
00413001 57              push    edi
00413002 e87f290100      call    image00400000+0x25986 (00425986)
00413007 83c664          add     esi,64h
0041300a 56              push    esi
IDA还没关吧 点jump 菜单下的jump to address ,输入00413002
0:00413000                 dd 7FE85700h, 83000129h, 685664C6h, 404h, 2970E857h, 5E5F0001h
这是IDA刚dump下的内存区,也就是壳解压出来的代码
右键undifine那段东东,有一警告框,点确定
然后在00413002的位置右键点code,为什么呢,在windbg中我们已知道这就是一个call指令的地址
_0:00413002                 call    sub_425986
_0:00413007                 add     esi, 64h
_0:0041300A                 push    esi
_0:0041300B                 push    404h
_0:00413010                 push    edi
_0:00413011                 call    sub_425986
_0:00413016                 pop     edi
_0:00413017                 pop     esi
_0:00413018                 retn    4
在windbg的debug菜单点stop debug停止调试
在idapro _0:00413002  的位置设在这个位置上设硬件断点,方法是按f2,然后右键选Edit breakpoint 点hard break,然后在ida pro的debugger菜单下点运行,程序将断在
_0:00413002                 call    sub_425986
继续运行程序,输入用户名:MissileCat及密码:20080415,点注册后程序又中断,用f8跟进,遇到mfc42之类的东东就ctrl+f7跳出,直到
0:004130A8 lea     esi, [ebx+64h] 又回到用户代码区
继续f8跟
_0:00413293 call    sub_425A88                      ; 显示出错对话框
好了 应该就是0:004130A8到_0:00413293这段代码有问题
在0:004130A8下断点,重新运行程序,点注册,直到在这个位置断下
然后f7单步跟,看一下其它的代码,因为只有这样才能看到一些解压的代码,不久后到了一个有趣的地方MBX@2A4@3C3238.___:00B11640 mov     eax, large fs:0这东东不用说是一个she(结构化异常处理),这种玩意儿常用来欺骗调试器,小心了
看看代码,有戏:
MBX@2A4@3C3238.___:00B116E9 loc_B116E9:                             ; CODE XREF: sub_B11640+DE j
MBX@2A4@3C3238.___:00B116E9 mov     al, [esp+ecx+3A0h+var_318]
MBX@2A4@3C3238.___:00B116F0 cmp     al, 20h
MBX@2A4@3C3238.___:00B116F2 jz      short loc_B11717
MBX@2A4@3C3238.___:00B116F4 test    al, al
MBX@2A4@3C3238.___:00B116F6 jz      short loc_B11717
MBX@2A4@3C3238.___:00B116F8 cmp     al, 30h
MBX@2A4@3C3238.___:00B116FA jl      short loc_B11700
MBX@2A4@3C3238.___:00B116FC cmp     al, 39h
MBX@2A4@3C3238.___:00B116FE jle     short loc_B11717
MBX@2A4@3C3238.___:00B11700
MBX@2A4@3C3238.___:00B11700 loc_B11700:                             ; CODE XREF: sub_B11640+BA j
MBX@2A4@3C3238.___:00B11700 cmp     al, 61h
MBX@2A4@3C3238.___:00B11702 jl      short loc_B11708
MBX@2A4@3C3238.___:00B11704 cmp     al, 7Ah
MBX@2A4@3C3238.___:00B11706 jle     short loc_B11717
MBX@2A4@3C3238.___:00B11708
MBX@2A4@3C3238.___:00B11708 loc_B11708:                             ; CODE XREF: sub_B11640+C2 j
MBX@2A4@3C3238.___:00B11708 cmp     al, 41h
MBX@2A4@3C3238.___:00B1170A jl      short loc_B11710
MBX@2A4@3C3238.___:00B1170C cmp     al, 5Ah
MBX@2A4@3C3238.___:00B1170E jle     short loc_B11717
判断我们的用户名是否为数字和字母
mov     cl, [esp+eax+3A0h+var_318]
MBX@2A4@3C3238.___:00B11729 mov     bl, [esp+eax+3A0h+var_110]
MBX@2A4@3C3238.___:00B11730 add     cl, bl
MBX@2A4@3C3238.___:00B11732 mov     [esp+eax+3A0h+var_214], cl
开始计注册码了,有兴趣的可以看看它是怎么加密的
我是没那兴趣了,点graph view看图表
00B11971 jnz     loc_B119FA 这个跳转就是天堂和地狱的分别了,到这一点后
我直接看[esp+eax+3A0h+var_318]的位置,密码在那静静徜着呢:
:0012A138 var_318 db 30h
Stack[0000040C]:0012A139 db  32h ; 2
Stack[0000040C]:0012A13A db  34h ; 4
Stack[0000040C]:0012A13B db  42h ; B
Stack[0000040C]:0012A13C db  33h ; 3
Stack[0000040C]:0012A13D db  42h ; B
Stack[0000040C]:0012A13E db  31h ; 1
Stack[0000040C]:0012A13F db  36h ; 6
Stack[0000040C]:0012A140 db    0
转为字串就是:024B3B16
收工!
此文为学习目的,学偶这种没钱一族就当温习一下汇编知识,希望各位还是要尊重别人的劳动成果,有钱的还是买正版吧,

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 191
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不错了~~~
2008-4-18 16:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不错!~学习了!~对汇编不感冒怎么办啊!~
2008-4-20 08:39
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
这个软件用 OD 不用5分钟 KO,但楼主用上了 IDA 和 WINDBG 来解密,貌似复杂了

但学习使用才是要支持的
2008-4-20 10:26
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
学习...支持楼主......
2008-4-23 11:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我的天啊 我看不懂 看样了还有好长路要走啊
2008-4-23 11:58
0
游客
登录 | 注册 方可回帖
返回
//