首页
社区
课程
招聘
[旧帖] [原创]一个法兰重量计算器的破解 0.00雪花
发表于: 2012-6-12 17:38 1633

[旧帖] [原创]一个法兰重量计算器的破解 0.00雪花

2012-6-12 17:38
1633
这个软件是VB编写的都是调用API。在OD中查ascii码和unicode是查不出什么东东来的。
这时我们可以用c32asm这个工具把它载入,用反汇编模式打开。在编辑菜单中把“使用unicode分析字符串”选种,即前面显示对号。然后再在“查看”中点字符串。左边就会出现一个字符串调用的窗口。在滚动条那里往下拉。双击提示信息下面的CALL就会看到关于注册的信息。
::00409122::  8945 B8                  MOV [EBP-48],EAX                        
::00409125::  C785 58FFFFFF E4284000   MOV DWORD PTR [EBP-A8],4028E4               \->: 注册
::0040912F::  C785 50FFFFFF 08000000   MOV DWORD PTR [EBP-B0],8               
::00409139::  FFD3                     CALL EBX                                
::0040913B::  8D95 60FFFFFF            LEA EDX,[EBP-A0]                        
::00409141::  8D4D D0                  LEA ECX,[EBP-30]                        
::00409144::  C785 68FFFFFF D0284000   MOV DWORD PTR [EBP-98],4028D0               \->: 请输入注册码:
::0040914E::  C785 60FFFFFF 08000000   MOV DWORD PTR [EBP-A0],8        
        

::0040927A::  C785 58FFFFFF 54294000   MOV DWORD PTR [EBP-A8],402954               \->: 注册成功
::00409284::  C785 50FFFFFF 08000000   MOV DWORD PTR [EBP-B0],8               
::0040928E::  FFD3                     CALL EBX                                
::00409290::  8D95 60FFFFFF            LEA EDX,[EBP-A0]                        
::00409296::  8D4D D0                  LEA ECX,[EBP-30]                        
::00409299::  C785 68FFFFFF 30294000   MOV DWORD PTR [EBP-98],402930               \->: 注册成功,感谢您的注册!谢谢!
::004092A3::  C785 60FFFFFF 08000000   MOV DWORD PTR [EBP-A0],8

找到该找的地方后用OD再次载入。前往--表达式输入显示注册成功的地址。
这里的注视没有提示,你可以对照C32找出来的信息在这里写上对应的信息。这样方便后面调式。
找到这一段的领空00409070。下断运行。
点注册后断下来后用F8一步步来运行。
在00409179   .  FF15 50104000 CALL DWORD PTR DS:[<&MSVBVM60.#596>]     ;  MSVBVM60.rtcInputBox

这里调用一个inputbox就是输入筐来。这里先自己输一个注册码点确定。然后继续F8运行
在004091D9   .  FF92 00070000 CALL DWORD PTR DS:[EDX+700]              ;  flange.00402212

这里会弹出一个无字的小筐来。直接点确定后回来继续。
在经过一个JGE的跳到来到004091FD   . /0F85 DE010000 JNZ flange.004093E1

这个JNZ实现在跳转。如果这里跳了这个注册就泡汤了。一开始输入的注视这里就能很直观的看到。我们就把这个跳转不让它实现。改为JE或者把寄存器里的Z后面双击改为1.这里把Z后面的值改为1后。重新加载软件就会还原的。不管用什么方面。这里反正不能让它跳。
这个跳如果不实现的话下面这个00409203   .  BA F0284000   MOV EDX,flange.004028F0                  ;  HKLM\Software\Dsoft\Register

就会在这个路径的注册表里写东西了。我们可以先看一下现在它显示的这个位置中注册表是个什么样子。一会它要写些什么。
现在我们一直运行就会出现那个可爱的成功界面了。
最后要注意,有些软件需要把下的断取掉。有些会直接跳过去。我们现在调的这个不用取也不会影响什么的。
我们在注册表中可以看到那个多了一个键值。这个类型的可以把它导出来在任何电脑上导入注册。
OK。就到这里。写的有些粗。请谅解。有什么不对之处请多包涵。

[课程]Android-CTF解题方法汇总!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 277
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
c32asm找到“在编辑菜单中把“使用unicode分析字符串”选种,即前面显示对号。然后再在“查看”中点字符串”,对vb程序查找字符串参考又学一招。
2012-6-13 21:24
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
路过,学习了
2012-6-18 13:35
0
游客
登录 | 注册 方可回帖
返回
//