翻译XXXX逆向系列教程-Cracking driverfinder XOR06
本帖最后由 姐又寡闻了 于 2019-6-6 22:39 编辑这是R4ndom破解教程翻译计划的第二篇。
第一篇:翻译R4ndom逆向系列教程-CrackMe by XOR6
R4ndom破解教程全文翻译(For新手)导航帖提供的网盘中有一些英文材料,本文即为本人翻译自其中的“其他教程”中的Cracking_driverfinder_XOR06,未来会翻译更多的教程。图片是我自己做的过程中重新截的,用到的工具可以在爱盘下载,文末提供英文原文和源文件下载。作者应该是在XP上做的,这个软件我在我win10的机器上安装以后发现虽然安装路径是C:\Program Files (x86)但是是64位的,所以还是请开一个XP虚拟机来做这个练习吧。
欢迎!在这个教程中我们将会破解一个需要注册的真实的软件。这只是为了学习,所以如果你喜欢这个软件,请购买正版。我假设你已经知道Olly和怎样patch程序等等这样的基础知识了。
当安装好这个程序并启动以后它会马上扫描过时的驱动。(正如你所见,我所有的驱动都需要升级了)。这不是什么大问题,但是如果你有需要升级的驱动你应该注册并升级。我没有注册,所以我们先点一下Register按钮。
关闭浏览器弹出的窗口之后你会看见这样。
随便输入License ID和password, 点击Activate你会看见这样。
这个结果没有意外,上Olly!
如果你想通过找字符串的办法定位的话恐怕你会失望的(我已经试过了),有很多种办法定位需要patch的位置,这里我将使用的这个方法非常简单方便。把程序加载到Resource Hacker中,点击string table然后点击"39",你就会看见你在找的字符串。正如你所见,609和上面的608对应的"Activation Complete"。这就是我们需要的信息,现在回到Olly。
回到Olly用我们得到的信息,单击右键,搜索常量。
输入我们在Resource Hacker中找到的号码,无论是signed中输入还是unsigned中输入你都会看见16进制值是261。现在点击OK。
我们找到了PUSH 261(Resource Hacker中609的16进制值)。正如你所见我在旁边备注了"bad push"确保我不会忘记PUSH 261是干嘛的。
我们找的地方是正确的,但是该在哪里patch呢???向上看两行有一个JNE SHORT Driverfinder.0043BOCA。是这里么?点一下它不会发现它会跳过PUSH 261,下面有一些PUSH 262 和PUSH 2D9,它们都不是代表注册成功的字符串,只是其它的提示失败的信息。(你可以把它们转换成十进制然后在Resource Hacker中找到它们代表的含义)。所以也许我们可以跳过所有的这些错误信息?是的。再向上面看四行(译者注:也就是PUSH 261上面第六行),你会看见这样。
正如你所见这是一个很大的跳转,如果你点击它(截图中我已经做了)然后按下enter键,你就会跟随这个跳转来到这里。
这个跳转跳过了所有提示失败的信息,向下看几行你就能看见PUSH 260!!它就是608的十六进制值。你还记得它代表注册成功的字符串么? 回到上面再这个跳转处设置一个断点。(正如你所见我已经在这里备注了"Need to Jump")
现在运行程序,点击Register按钮。随便输入License ID和Password然后点击"Activate"。Olly在这里停下。
正如你所见这里不会跳转,但是我们知道必须把这里patch掉。改好之后F8单步,如图所示我们又来到了这里。
正如你所见这里在到PUSH 0x260之前还有一个JNZ命令。所以我们需要继续单步,观察这里JNZ会不会跳转。继续单步直到JNZ命令处。
正如你所见这里不会跳转,所以直接F9运行看看会发生什么。
点击"OK"你会看到register按钮已经消失了。
如果你检查about box或者icontray中的菜单(译者注:这里不太清楚原文中的about box和icontray是什么)你会发现可能也找不到register。有这么简单么?记得总是在Olly中重新加载patch之后的程序来验证。加载没问题,但是接下来…
如果你点了OK按钮之后...
又回到原点了!!!这里还有一处验证我们patch…如果你在Resource Hacker中找字符串的话是找不到的(我怎么知道的?我已经试过了)。我们需要在Olly中找字符串。
找到了。双击之后我们来到这里。
既然我认为这是一个验证函数,我总是最先尝试最简单的办法:可以直接跳过么?向上翻你会发现有许多关闭更新窗口和memset,看起来是在正在生成提示错误信息的对话框。一直往上翻直到程序的开头,你会来到这里。
看看它是在哪被调用的,你会看到这样(在Olly底部)。右击这个地址然后点击Go to CALL from 004012B6。
然后你会来到这里。
怎么避免这个调用呢??上面两行就有一个JE short Driverfinder.004012BB。在这里下断点然后运行程序。
程序不会像我们期待的那样在这里跳转。同上次一样修改此处的跳转条件然后保存新的文件。这次我们终于完全破解了这个软件。
希望我继续翻译的请支持!!!
上一篇帖子有人说这个系列有点过时了,但是我想这些基本的方法现在也是有学习价值的,特别是对于我这样的新手来说。我尽量选不那么过时的内容翻译吧。谢谢大家支持。 shj2k 发表于 2017-2-20 17:09
附件好像有些问题,下载了两次都解压失败。
可能是上传时出问题pdf文件损坏了,请只提取里面的安装程序吧。 about box和icontray应该是关于对话框和右下角托盘菜单吧 好多东西啊,看着眼花 膜拜大神ing几乎看不懂 感谢分享 终于可以上网了...!!! 感谢分享 oyea 膜拜大神ing几乎看不懂 附件好像有些问题,下载了两次都解压失败。
页:
[1]
2