|
且行且远
有感于博客长期缺少学术氛围,每天都是在为生活的琐事牢骚,今天俺决定写点技术性的东西,免得让人觉得自己不学无术——虽然我的确觉得自己就是如此。 这个程序是一位QQ上的朋友Livermore和我共同研究的,我的破解里面用到了许多他的研究成果,这里先向Livermore表示感谢。这个程序网上挺常见的,可以给EPSON ME2打印机清零,但网上给出的破解方法太麻烦,所以Livermore打算做个好点的破解,我只是做了一些打下手的工作,却征得了他的同意在这儿大言不惭地在这儿写博客,有点惭愧。 网上给出的破解需要三个条件,当条件不满足的时候会弹出对话框说无法运行程序,这里的爆破点在4036C5和4036F0初的两个call。
爆破点这里显而易见,只要保证[ebp-218]是0就可以正常的运行程序了,爆破方法很简单,不说了。但是爆破之后会发现Particular adjustment mode不可用。经过研究发现,改内存中的数据怎么改都没关系,只要一修改文件立刻那个功能就失效了,于是程序肯定是对文件加了自校验的暗桩。下CreateFileA的断点,点那个按钮后断下,Ctrl+F9几次可以返回到主程序,再往下翻翻,来到这里:
由此可见,[579950]处是一个校验处,前面是对文件进行校验,然后这里就是个校验位,校验失败按钮就失效,粗粗看了一下,校验位有好几十个,每个还可能都不只一个位置,全都修改是项很耗体力和耐心的工作,不过也不是不能干。另外,由于这个程序只校验原文件,于是可以写一个Loader来动态修改内存中的地址,这样就可以避免修改那么多的暗桩,这应该是最简单的办法了。anyway,两种方法我都尝试了一下,下面是下载地址: 压缩包里是完整的EPSON ME2清零程序,里面的AdjProg.exe文件是原程序,我没有修改过,不信的可以自行在网上下载并比对MD5,Loader.exe是我写的loader方式的破解程序,运行时需要保证文件夹内有AdjProg.exe文件,否则不能运行。AdjProg1.exe是我改掉暗桩之后的程序,上百个暗桩,我不能保证全都修改完了,喜欢那种破解方式请自行选择。另外,loader方式会不会被认为是病毒程序我不知道,如果你信不过我的话,可以不用。 哇……你的破解涉足的领域还真是广唉…… @Marcher: 2008年10月25日 22:56:50 终于看到博主行动了,看来先生对编程很在行的嘛,不过,希望更加勤奋些 @zyhxhw: 2008年12月17日 23:32:45 博主实在是太厉害了!我试验了您的AdjProg1.exe和Loader.exe,不用那三个条件,完全可以运行程序。 @suzy7777 ssfighter,不管怎样,还是要谢谢你! 2009年05月28日 11:02:21 回复的怎么都是乱码啊 2009年05月28日 11:03:55 现在又好了啊,可能是我打字太多的原因吧!CreateFileA太多要全下断吗? 发表评论
|
|
||