首页
社区
课程
招聘
[旧帖] [求助]一个国外汽车软件的破解,请高手指导下思路 0.00雪花
发表于: 2009-10-22 10:33 2021

[旧帖] [求助]一个国外汽车软件的破解,请高手指导下思路 0.00雪花

2009-10-22 10:33
2021
我是刚刚接触到破解这一块的,遇到一个国外的汽车资料的软件,按照前辈门写的文章的思路,但是现在遇到这个问题不知道怎么办,请高手给指导下,我该怎么做,谢谢!非常感谢!

我的操作方法:
OD载入程序(此程序没有加壳,是VC++的),运行,中间OD会报异常,我都SHIFT+F9忽略了,然后程序运行之后,选择注册,在弹出的注册窗口中,随便输入用户名和假注册码(弹出的窗口中有机器码),然后点击执行,会出现注册码无效的提示。

然后我在OD中选择“超级字符串参考”,但是并没有找到“注册码无效”的字符,(这个程序是多国语言的,大概有10几种语言吧),但后点OD中的K图标,打开调用堆栈窗口,里面竟然是空的,
我就不知道该怎么办了,请高手指导下,我下面该怎么做,怎么才能找到合适的断点,谢谢,小弟不盛感激!!!

注:后来还发现如果出现那个“注册码无效”的窗口,如果一段时间不点那个确定,程序就会死掉。

谢谢各位!!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 1632
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
然后我在OD中选择“超级字符串参考”,但是并没有找到“注册码无效”的字符,(这个程序是多国语言的,大概有10几种语言吧),但后点OD中的K图标,打开调用堆栈窗口,里面竟然是空的,
我就不知道该怎么办了,请高手指导下,我下面该怎么做,怎么才能找到合适的断点,谢谢,小弟不盛感激!!!


你没按F12暂停,堆栈里当然是空的。
2009-10-22 10:35
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
3
哦,好的谢谢我试一下,笨死了我,谢谢你!
2009-10-22 10:39
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
4
暂停之后,查看调用堆栈的截图如下:

我双击进去之后是系统的领空,user32,我该怎么办,谢谢,

在线等,谢谢,看视频教程上都是直接进就可以跟到按钮的点击事件,变化一点我这笨菜鸟就不会了,谢谢!
上传的附件:
2009-10-22 15:04
0
雪    币: 53
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
还有一个方法就是下bp MessageBoxA这个断点。
2009-10-22 15:19
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
6
我对“bp MessageBoxA”不是太懂,搜索下了意思是这样的:

bp是对API模块函数下断(将直接中断在API函数内部),bpx是对程序模块调用API下断(断在程序领空调用API函数的语句上)。

粘过来希望和我一样的新手看看。

谢谢楼上的,我试一试!
2009-10-22 15:27
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
7
[QUOTE=bum;702722]

[/QUOTE]

我跟进去之后到了这里,



我继续向上找到这段代码的开头,在开始的地方下断,但是我一直跟,都没有发现比较注册码是否正确的地方,都会跳转到弹出那个注册码不正确的窗口,
以下是代码段:

73D4976E    C9              LEAVE
73D4976F    C2 0400         RETN 4
73D49772    CC              INT3
73D49773    CC              INT3
73D49774    CC              INT3
73D49775    CC              INT3
73D49776    CC              INT3
73D49777 >  8BFF            MOV EDI,EDI     //我在代码段的开始这里下了断点,
73D49779    55              PUSH EBP
73D4977A    8BEC            MOV EBP,ESP
73D4977C    E8 55EB0700     CALL MFC42.#1168
73D49781    8B40 04         MOV EAX,DWORD PTR DS:[EAX+4]
73D49784    85C0            TEST EAX,EAX
73D49786    74 0B           JE SHORT MFC42.73D49793
73D49788    8B10            MOV EDX,DWORD PTR DS:[EAX]
73D4978A    8BC8            MOV ECX,EAX
73D4978C    5D              POP EBP
73D4978D    FFA2 94000000   JMP DWORD PTR DS:[EDX+94]
73D49793    33C9            XOR ECX,ECX
73D49795    5D              POP EBP
73D49796    E9 05000000     JMP MFC42.#2512
73D4979B    CC              INT3
73D4979C    CC              INT3
73D4979D    CC              INT3
73D4979E    CC              INT3
73D4979F    CC              INT3
73D497A0 >  8BFF            MOV EDI,EDI
73D497A2    55              PUSH EBP
73D497A3    8DAC24 64FFFFFF LEA EBP,DWORD PTR SS:[ESP-9C]
73D497AA    81EC 1C010000   SUB ESP,11C
73D497B0    A1 38B8E073     MOV EAX,DWORD PTR DS:[73E0B838]
73D497B5    53              PUSH EBX
73D497B6    56              PUSH ESI
73D497B7    57              PUSH EDI
73D497B8    8985 98000000   MOV DWORD PTR SS:[EBP+98],EAX
73D497BE    8B85 A4000000   MOV EAX,DWORD PTR SS:[EBP+A4]
73D497C4    8BF9            MOV EDI,ECX
73D497C6    33DB            XOR EBX,EBX
73D497C8    53              PUSH EBX
73D497C9    897D 84         MOV DWORD PTR SS:[EBP-7C],EDI
73D497CC    8945 88         MOV DWORD PTR SS:[EBP-78],EAX
73D497CF    E8 5F120000     CALL MFC42.#2629
73D497D4    8D45 90         LEA EAX,DWORD PTR SS:[EBP-70]
73D497D7    50              PUSH EAX
73D497D8    53              PUSH EBX
73D497D9    E8 E8150000     CALL MFC42.#6756
73D497DE    33F6            XOR ESI,ESI
73D497E0    3BC3            CMP EAX,EBX
73D497E2    8945 80         MOV DWORD PTR SS:[EBP-80],EAX
73D497E5    74 18           JE SHORT MFC42.73D497FF
73D497E7    53              PUSH EBX
73D497E8    53              PUSH EBX
73D497E9    68 76030000     PUSH 376
73D497EE    FF75 90         PUSH DWORD PTR SS:[EBP-70]
73D497F1    FF15 7065DD73   CALL DWORD PTR DS:[<&USER32.SendMessageA>; USER32.SendMessageA
73D497F7    3BC3            CMP EAX,EBX
73D497F9    74 04           JE SHORT MFC42.73D497FF
73D497FB    8BF0            MOV ESI,EAX
73D497FD    EB 0A           JMP SHORT MFC42.73D49809
73D497FF    3BFB            CMP EDI,EBX
73D49801    74 06           JE SHORT MFC42.73D49809
73D49803    8DB7 A0000000   LEA ESI,DWORD PTR DS:[EDI+A0]
73D49809    3BF3            CMP ESI,EBX
73D4980B    895D 8C         MOV DWORD PTR SS:[EBP-74],EBX
73D4980E    74 16           JE SHORT MFC42.73D49826
73D49810    8B06            MOV EAX,DWORD PTR DS:[ESI]
73D49812    8945 8C         MOV DWORD PTR SS:[EBP-74],EAX
73D49815    8B85 AC000000   MOV EAX,DWORD PTR SS:[EBP+AC]
73D4981B    3BC3            CMP EAX,EBX
73D4981D    74 07           JE SHORT MFC42.73D49826
73D4981F    05 00000300     ADD EAX,30000
73D49824    8906            MOV DWORD PTR DS:[ESI],EAX
73D49826    8B9D A8000000   MOV EBX,DWORD PTR SS:[EBP+A8]
73D4982C    F6C3 F0         TEST BL,0F0
73D4982F    75 17           JNZ SHORT MFC42.73D49848
73D49831    8BC3            MOV EAX,EBX
73D49833    83E0 0F         AND EAX,0F
73D49836    83F8 01         CMP EAX,1
73D49839    76 0A           JBE SHORT MFC42.73D49845
73D4983B    83F8 02         CMP EAX,2
73D4983E    76 08           JBE SHORT MFC42.73D49848
73D49840    83F8 04         CMP EAX,4
73D49843    77 03           JA SHORT MFC42.73D49848
73D49845    83CB 30         OR EBX,30
73D49848    85FF            TEST EDI,EDI
73D4984A    74 05           JE SHORT MFC42.73D49851
73D4984C    8B7F 7C         MOV EDI,DWORD PTR DS:[EDI+7C]
73D4984F    EB 13           JMP SHORT MFC42.73D49864
73D49851    8D7D 94         LEA EDI,DWORD PTR SS:[EBP-6C]
73D49854    68 04010000     PUSH 104
73D49859    8BC7            MOV EAX,EDI
73D4985B    50              PUSH EAX
73D4985C    6A 00           PUSH 0
73D4985E    FF15 5C63DD73   CALL DWORD PTR DS:[<&KERNEL32.GetModuleF>; kernel32.GetModuleFileNameA
73D49864    53              PUSH EBX
73D49865    57              PUSH EDI
73D49866    FF75 88         PUSH DWORD PTR SS:[EBP-78]
73D49869    FF75 80         PUSH DWORD PTR SS:[EBP-80]
73D4986C    FF15 B065DD73   CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; USER32.MessageBoxA //这里调用了messagebox
73D49872    85F6            TEST ESI,ESI
73D49874    8BF8            MOV EDI,EAX
73D49876    74 05           JE SHORT MFC42.73D4987D
73D49878    8B45 8C         MOV EAX,DWORD PTR SS:[EBP-74]
73D4987B    8906            MOV DWORD PTR DS:[ESI],EAX
73D4987D    837D 90 00      CMP DWORD PTR SS:[EBP-70],0
73D49881    74 0B           JE SHORT MFC42.73D4988E
73D49883    6A 01           PUSH 1
73D49885    FF75 90         PUSH DWORD PTR SS:[EBP-70]
73D49888    FF15 F065DD73   CALL DWORD PTR DS:[<&USER32.EnableWindow>; USER32.EnableWindow
73D4988E    8B4D 84         MOV ECX,DWORD PTR SS:[EBP-7C]
73D49891    6A 01           PUSH 1
73D49893    E8 9B110000     CALL MFC42.#2629
73D49898    8B8D 98000000   MOV ECX,DWORD PTR SS:[EBP+98]
73D4989E    8BC7            MOV EAX,EDI
73D498A0    5F              POP EDI
73D498A1    5E              POP ESI
73D498A2    5B              POP EBX
73D498A3    E8 B6920700     CALL MFC42.73DC2B5E
73D498A8    81C5 9C000000   ADD EBP,9C
73D498AE    C9              LEAVE
73D498AF    C2 0C00         RETN 0C
73D498B2    CC              INT3




请各位高手分析一下,谢谢了!

还有如果我在getwindowtexta内部下断,只要把注册的窗口激活,就会断在OD内,


很郁闷,接触破解不久,就遇到这么恶心人的东西,放弃不做了又不甘心,请高手指导一下,因为软件太大传不上来,那位好心人空了,可以加我QQ,我发个远程协助帮我看下,谢谢!!!!!

我QQ:17701060,再次谢谢!
上传的附件:
2009-10-23 16:38
0
雪    币: 7
活跃值: (14)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
上传附件  !
2009-10-23 22:01
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
9
源程序是在是太大,安装时2张D9的光盘,即使我精简把资料库和帮助文件去掉,也要500M,而且主程序还提示缺少库文件,但是我搜索整个硬盘还是找不到这个文件,您什么时候有空我发个远程协助,谢谢!!!

2009-10-24 12:09
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
10
我没有Kxb,只有百度知道的分,有愿意帮忙的我在百度知道上发了一问题,请帮我一下,谢谢
http://zhidao.baidu.com/question/122741953.html



谢谢!!谢谢!!谢谢!!谢谢!!谢谢!!
2009-10-24 16:35
0
雪    币: 299
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
楼上的这个问题!!确实的比较的难缠~~~对于刚刚刚刚入门的人(比如我)有点难办,他的那个出错框所在的代码段,找不到任何有用的信息,这就和我前几天在某商店管理软件上碰到的一样!  程序断下来后,返回到用户代码,发现是个出错提示!!但是前后文并没有进行任何判断,无论怎么爆破改跳 只要程序不中止退出,那么一定会是出错的结果;后来使用未注册限制的功能时,奇怪的是也会停在这段代码,然后提示的内容并不一样。因为破解不是太懂,所以就用编程的思维描述下!貌似作者把 对用户的提示封装了下,每次提示都跳用这段代码,然后传入要提示的字符串!!所以我们在这段代码上下功夫是徒劳的,需要找到上层的call!!但是我是新手,绕来绕去 绕晕了!!!
2009-10-24 17:07
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bum
12
谢谢楼上的支持,我也是这样的,哎,摸不着一点规律。

我这个软件是外国一个汽车维修软件,好贵的,每年的使用费都9K,还不说第一次买的费用,黑死了。

朋友把光盘快递给我说让我看看能不能破解了,我太菜了搞不定,但是我实在不甘心,我一定要把它搞定!!

谢谢各位高手指点!!!
2009-10-24 18:11
0
游客
登录 | 注册 方可回帖
返回
//