天天看点

中秋献丑--软件使用期限

10年前,年轻的时候还真是个不折不扣的Windows逆向工程师,XP的时代感觉玩起来似乎比Linux更有创造性。

当你去了解更多,尝试更多,从冰刃到SoftICE,从一般的应用程序到驱动,从crackme到脱壳重塑,一切似乎都更有乐趣,更有成就感。

在那个时代,病毒木马层出不穷,多少人中招,又有多少人在此捞到他的第一桶金。windows7之前,360杀软免费潮到来之前,卡巴斯基应该占据了半壁江山,有一部分人的成就感在于,穿透或杀死杀软.....

软件安全似乎从来入不了程序猿们的法眼,第八个男人的世界,没人懂,没人体会......

也因为此,正式工作的第一年,废了右手,第二第废了左手。

所有这些似乎都跟工作没有关系,在于折腾的乐趣,享受技术。

因为iPod的一项工作,认识了开源,第一次见识了相当漂亮的C代码,由是,洗心革面,转投Linux阵营,享受代码之美。

只不过,10年前的Windows技术尘封了10年,也正慢慢融化到Linux世界。

以前只是注册了csdn帐号,一直空着,想想都觉得浪费,来搞点啥。

今天晚上,碰巧手上一款以前一直用的文字编辑器刚好到期了,就想试一试,刀生锈没。

中秋献丑--软件使用期限

又好像只有I Agree才是想要的,好吧,点了就出来下个窗口了:

中秋献丑--软件使用期限

除了购买就是退出,当然不是我想要的了!好办,只要不让这个购买窗口出来是不是就哦了!

那就开工吧,随便找个二进制工具搜索字符串"EditPlus is", 果然,在0x18F2B8这个文件偏移位置找到了。

再把这个文件地址转换到进程虚拟地址(VA)就是:0x590ab8(可以直接在IDA里面找到)

是时候多祭出我们的分析神器了,上IDA Pro,找到这个字符串:

中秋献丑--软件使用期限

好家伙,这里只有一个引用,一点悬念都没有了,转到这个函数地址:0x461A10

OK, 再祭出我们的调试神器OllyICE(原版是OllyDbg), 在0x461A10下断:

中秋献丑--软件使用期限

好了,看看我们的调用栈吧,函数返回地址是0x4d8d16, 回车即转到这个位置:

中秋献丑--软件使用期限

看到没,在0x4D8D11这个位置调用了我们当前显示购买窗口的函数,而在前面的0x4D8D07那个位置有个跳转指令,显然,在那儿要是跳转走了,就不会显示这个购买窗口了,那么,如果不显示购买,会是什么样子的呢?猜是继续试用。那好,就把这个地址的代码改了吧:双击0x4D8D07,把伪指令改成jmp就行了。要反应在文件上,就用文件编辑器找到这条指令对应的地方,把0x4D8D07转成文件偏移就是0xD807, je的16进制码是0x74,而这里的短跳转的16进制码是0xEB, 那么就是把执行程序的0xD807处的0x74改为0xEB就OK了。

到这里,这个软件就成无限期试用了,其实也没什么不好的。

我虽然没有发布这个软件的破解版,也没有发布实质性的东西,但是却告诉了一群好事者如何去做,多少还是有损开发者利益的。在这半夜的时候,我稍微自责一会儿,仅供学习之用,双节假期之后就做删掉了。

崇尚免费

不过,通过这个,大家应该有点小感想才对,特别是那些收费软件的作者,要知道,本文提及的这款软件搞定前后只是分分钟的事啊

下一篇: servlect