且行且远

Archive for the ‘逆向手札’ Category

分类: 逆向手札 由 ssfighter 于 2008年12月6日 发表

今天晚上上水木新软版,发现Mathtype更新到6.5了,以前6.0的注册机不能用了,简单看了一下,似乎注册算法和以前没什么不一样的,就是前面的MTW60要换成MTW65,然后再进行后面的计算,于是拿来以前自己写的6.0的注册机,简单改了几个地方,界面基本都没变,在这里低调地发布,有需要的同学请偷偷下载。

嗯,Design Science公司一直都很厚道,没有找过我的麻烦,谢谢。很长一段时间不愿意把注册机发布出来,主要还是怕惹麻烦上身,这个注册机偷偷地低调发布,大家自用就好。

界面截图(跟以前的一样):

抱歉,不再提供注册机的下载


分类: 逆向手札 由 ssfighter 于 2008年11月3日 发表

用财智记账也挺长时间的了,以前用财智5,一直用王猛的破解补丁,整个v5的一直都很好用,不过现在财智6出来了,感觉这个版本比5人性化了许多,当然也有很多原来5的功能我到现在都不知道在哪儿。觉得财智6挺好的,本来打算买一份的结果没想到现在财智6采用按照授权时间来付费的方式了,3个月就50块钱,不是我这样的小烟酒僧承受得起的。网上有份破解,刚下载到电脑上,结果发现财智6更新了,原来的破解肯定是没法用在新版本上了,也懒得再到处找了,干脆自己破解一个算了。

财智6完全采用联网验证的方式来校验序列号。先脱壳,UPX的壳太简单了,秒脱。然后运行程序,会提示你升级,这是因为财智6在运行的时候会首先校验源程序文件的CRC等参数,然后把这个参数发到网上去进行联网验证,以此来判断版本号是不是正确以及是否需要升级。

0084D158    E8 AF59EFFF     call    00742B0C

联网验证部分都在上面这个call里,可以下MessageBoxA断点,然后往上找找,爆破掉这里的提示,就不会提示升级的问题了,不过这样也有个缺点,就是把升级的提示完全地ban掉了,需要升级的时候也没提示了。

然后再往下看

0084D1A6    8B45 FC         mov     eax, dword ptr [ebp-4]
0084D1A9    BA 10D68400     mov     edx, 0084D610                    ; ASCII "4201"
0084D1AE    E8 117FBBFF     call    <StrCmp>
0084D1B3    75 59           jnz     short 0084D20E

这里与4201比较,下面还有与6113比较等等地方,这里是对从网上获取的消息进行判断并提示的地方,4201告诉你软件版本过低,让你赶紧升级,这当然是由于脱壳导致的,所以爆掉84D1B3处就可以。再往下,

0084D3CC    E8 BFF32100     call    00A6C790
0084D3D1    84C0            test    al, al
0084D3D3    75 15           jnz     short 0084D3EA
0084D3D5    8D55 C8         lea     edx, dword ptr [ebp-38]
0084D3D8    A1 44B4A800     mov     eax, dword ptr [A8B444]
0084D3DD    8B00            mov     eax, dword ptr [eax]
0084D3DF    E8 A0FA2100     call    00A6CE84
0084D3E4    837D C8 00      cmp     dword ptr [ebp-38], 0
0084D3E8    EB 0E           jnz     short 0084D3F8
0084D3EA    33C9            xor     ecx, ecx
0084D3EC    33D2            xor     edx, edx
0084D3EE    A1 14D97300     mov     eax, dword ptr [73D914]
0084D3F3    E8 FC27EFFF     call    0073FBF4

84D3CC的这个call是计算该授权号剩余的天数的,往里跟两层,来到这里:

00A6CD24    53              push    ebx
00A6CD25    83C4 F8         add     esp, -8
00A6CD28    8BD8            mov     ebx, eax
00A6CD2A    8BC3            mov     eax, ebx
00A6CD2C    E8 6B010000     call    00A6CE9C
00A6CD31    DD1C24          fstp    qword ptr [esp]
00A6CD34    9B              wait
00A6CD35    E8 9A009AFF     call    0040CDD4
00A6CD3A    DC2C24          fsubr   qword ptr [esp]
00A6CD3D    D805 4CCDA600   fadd    dword ptr [A6CD4C]
00A6CD43    E8 8C6599FF     call    004032D4
00A6CD48    59              pop     ecx
00A6CD49    5A              pop     edx
00A6CD4A    5B              pop     ebx
00A6CD4B    C3              retn

这是一个完整的子程序,这里是计算剩余时间的,如果计算结果是负的,那就说明该授权已经过期了,不过注意到[A6CD4C]=1.0,所以只要把这里改成10000这样的比较大的数,就能保证授权不过期,至少在新版本出来前不会过期。这个call在程序中很多地方都会调用,所以只要改了[A6CD4C]的值,就能一下子爆掉程序内所有判断是否过期的校验。

再往回,看到84E3D8处的跳转,这里只要把jnz改成jmp,也就是说不call 73FBF4,就不会有授权已过期的提示了。

基本上暂时就发现了这些需要爆破的地方,改了应该就能一直使用财智6了。曾经想自己做个Loader,照着《加密与解密》书上的程序改的,但是就是不好用,目前我也找不出毛病到底在哪儿,不知道有没有高人可以帮我解决一下loader的问题?谢谢~

这篇文章只是我自己记录的财智6的破解过程,如果有想破解财智6的可以参考一下,并不是提供破解的。财智6升级很频繁,目前没什么一劳永逸的方法,谢谢大家对这篇博文的关注,但看到评论都是在讨论新版本怎么破解的,这并非我的本意,所以本文禁止评论,有兴趣讨论的欢迎来email,谢谢。

另外,如果我之前对谁的态度不好,在此表示抱歉。


分类: 逆向手札 由 ssfighter 于 2008年10月25日 发表

嗯,Maze是个啥不用介绍了,也懒得介绍了。基本上每一次Maze出新版本我都会做一个显完整IP的版本,这次也不例外。虽然自从我大学毕业之后,这个软件就再也没用过了,不过还一直在关注着。Maze会根据用户的等级来隐藏IP,只有10级以上才能显示用户完整的IP地址,所以做了这个补丁,让任何等级的用户都能看到别人完整的IP。

下载并解压缩之后,覆盖原文件夹下的同名文件即可。

下载地址:

Box.net | eSnips | SkyDrive


分类: 逆向手札 由 ssfighter 于 2008年10月23日 发表

有感于博客长期缺少学术氛围,每天都是在为生活的琐事牢骚,今天俺决定写点技术性的东西,免得让人觉得自己不学无术——虽然我的确觉得自己就是如此。

这个程序是一位QQ上的朋友Livermore和我共同研究的,我的破解里面用到了许多他的研究成果,这里先向Livermore表示感谢。这个程序网上挺常见的,可以给EPSON ME2打印机清零,但网上给出的破解方法太麻烦,所以Livermore打算做个好点的破解,我只是做了一些打下手的工作,却征得了他的同意在这儿大言不惭地在这儿写博客,有点惭愧。

网上给出的破解需要三个条件,当条件不满足的时候会弹出对话框说无法运行程序,这里的爆破点在4036C5和4036F0初的两个call。

004036CD   /74 0A           je      short 004036D9
004036CF   |C785 E8FDFFFF 0>mov     dword ptr [ebp-218], 1
004036D9   \8B85 E8FDFFFF   mov     eax, dword ptr [ebp-218]
004036DF    50              push    eax
004036E0    8B8D 10FCFFFF   mov     ecx, dword ptr [ebp-3F0]
004036E6    81C1 2C0C0000   add     ecx, 0C2C
004036EC    51              push    ecx
004036ED    8D4D E4         lea     ecx, dword ptr [ebp-1C]
004036F0    E8 9ED50C00     call    004D0C93
004036F5    83F8 01         cmp     eax, 1
004036F8    74 0A           je      short 00403704
004036FA    C785 E8FDFFFF 0>mov     dword ptr [ebp-218], 1
00403704    83BD E8FDFFFF 0>cmp     dword ptr [ebp-218], 0
0040370B    0F84 A4000000   je      004037B5

爆破点这里显而易见,只要保证[ebp-218]是0就可以正常的运行程序了,爆破方法很简单,不说了。但是爆破之后会发现Particular adjustment mode不可用。经过研究发现,改内存中的数据怎么改都没关系,只要一修改文件立刻那个功能就失效了,于是程序肯定是对文件加了自校验的暗桩。下CreateFileA的断点,点那个按钮后断下,Ctrl+F9几次可以返回到主程序,再往下翻翻,来到这里:

004055EA  |> \83BD 34FDFFFF>cmp     dword ptr [ebp-2CC], 0
004055F1  |.  75 0C         jnz     short 004055FF
004055F3  |.  C705 50995700>mov     dword ptr [579950], 1
004055FD  |.  EB 18         jmp     short 00405617
004055FF  |>  8B85 2CFBFFFF mov     eax, dword ptr [ebp-4D4]
00405605  |.  3B85 34FDFFFF cmp     eax, dword ptr [ebp-2CC]
0040560B  |.  75 0A         jnz     short 00405617
0040560D  |.  C705 50995700>mov     dword ptr [579950], 1
00405617  |>  8B8D 38FDFFFF mov     ecx, dword ptr [ebp-2C8]
0040561D  |.  51            push    ecx
0040561E  |.  E8 E3941100   call    0051EB06
00405623  |.  83C4 04       add     esp, 4
00405626  |>  833D 50995700>cmp     dword ptr [579950], 0
0040562D  |.  75 05         jnz     short 00405634

由此可见,[579950]处是一个校验处,前面是对文件进行校验,然后这里就是个校验位,校验失败按钮就失效,粗粗看了一下,校验位有好几十个,每个还可能都不只一个位置,全都修改是项很耗体力和耐心的工作,不过也不是不能干。另外,由于这个程序只校验原文件,于是可以写一个Loader来动态修改内存中的地址,这样就可以避免修改那么多的暗桩,这应该是最简单的办法了。anyway,两种方法我都尝试了一下,下面是下载地址:

Box.net | eSnips | SkyDrive

压缩包里是完整的EPSON ME2清零程序,里面的AdjProg.exe文件是原程序,我没有修改过,不信的可以自行在网上下载并比对MD5,Loader.exe是我写的loader方式的破解程序,运行时需要保证文件夹内有AdjProg.exe文件,否则不能运行。AdjProg1.exe是我改掉暗桩之后的程序,上百个暗桩,我不能保证全都修改完了,喜欢那种破解方式请自行选择。另外,loader方式会不会被认为是病毒程序我不知道,如果你信不过我的话,可以不用。


分类: 逆向手札 由 ssfighter 于 2008年9月7日 发表

以前曾经做过自动操作魔法师2.91的注册机,不过有人说不好用,我估计可能是算法上还有问题,因为在我这里是好用的。不过现在已经找不到2.91的下载了,最新版是2.93,我就利用周末的下午搞了一下这个版本,原来的算法都忘得差不多了,虽说有注册机的源代码,但有没有也都没啥两样,呵呵。

发现了一处小问题,不过我不知道是2.91到2.93的注册算法变了,还是我原来就没仔细看过那个地方的算法,现在网上也找不到2.91版的下载了,所以也无法确定了。

和上次写的2.91注册机一样,我不会散布这个注册机,如果是要一起讨论注册算法的可以留言索要,其他的就请不必费心了,希望大家理解。