利用VB的函数快速破解VB程序。 有人跟我说看见VB就犯愁,其实我也TMD讨厌VB编写的程序,但是你又不得不佩服它的易用性,而就是因为它有特殊的运行库,这样也给我们带来了方便,只要我们掌握他的几个函数就可以达到快速破解的目的,当然不是对所有的VB程序都是管用的。 下面我们来看一个例子帮助你来分析VB的程序,网页三叉戟3.0的破解过程。同时这个程序也采用了程序启动时再进行检验是否注册的典型程序,让我们来一同分析它吧! 来到注册的地方,输入用户名和注册码: 小球[CCG] 78787878 然后点注册。提示重新启动程序来判断是否注册成功! 用ice载入它,然后load它,来到程序的启动地方,然后下断点:bpx regqueryvalueexa do “d esp->8”(这样你可以快速的达到你想要看到的东西) 然后按F5让程序运行,继续按下去,直到你看见了3次key这个注册表的标志。然后按F12来到程序的真正的领空: :00428F14 FF15F8114000 Call dword ptr [004011F8] :00428F1A 898520FFFFFF mov dword ptr [ebp+FFFFFF20], eax <----大概是停到这里,eax中就是你输入的假的注册码。 :00428F20 C78518FFFFFF08000000 mov dword ptr [ebp+FFFFFF18], 00000008 :00428F2A 8D9518FFFFFF lea edx, dword ptr [ebp+FFFFFF18] :00428F30 8D4D8C lea ecx, dword ptr [ebp-74]
* Reference To: MSVBVM60.__vbaVarMove, Ord:0000h | :00428F33 FF1520104000 Call dword ptr [00401020] :00428F39 C745FC0B000000 mov [ebp-04], 0000000B :00428F40 C785BCFEFFFFB00E4200 mov dword ptr [ebp+FFFFFEBC], 00420EB0 :00428F4A C785B4FEFFFF08800000 mov dword ptr [ebp+FFFFFEB4], 00008008 :00428F54 8D45C0 lea eax, dword ptr [ebp-40] :00428F57 50 push eax :00428F58 8D8DB4FEFFFF lea ecx, dword ptr [ebp+FFFFFEB4] :00428F5E 51 push ecx 通过反复的跟踪我始终没有发现有明码的比较,可见作者还是费了很大的心机的。你可以用Ctrl+PageDown向下查找有用的函数,翻了好久你可能看见了一些计算的函数,最终来到这儿: * Reference To: MSVBVM60.__vbaVarTstEq, Ord:0000h | :00429329 FF150C114000 Call dword ptr [0040110C] :0042932F 66898580FEFFFF mov word ptr [ebp+FFFFFE80], ax :00429336 8D8D3CFFFFFF lea ecx, dword ptr [ebp+FFFFFF3C] 这里就是比较后的判断函数了,MSVBVM60.__vbaVarTstEq这个函数很是有趣,在《发了体育彩票2.3》中它也是判断是否注册的函数,下面就是怎么改的问题了。看看各个寄存器,发现只有ebx是1,好了就把0042932F 66898580FEFFFF mov word ptr [ebp+FFFFFE80], ax改为0042932F 66898580FEFFFF mov word ptr [ebp+FFFFFE80], bx 这样你就巧妙的爆破了这个程序。 幸运昕看到了吗?希望你试试! |