大神论坛

找回密码
快速注册
查看: 587 | 回复: 0

[原创] 售电管理软件的逆向分析及脱壳破解

digest

主题

帖子

9

积分

初入江湖

UID
26
积分
9
精华
威望
18 点
违规
大神币
68 枚
注册时间
2021-03-21 09:26
发表于 2021-03-28 17:23
本帖最后由 hahhahah 于 2021-03-28 17:23 编辑

起因:前几天在论坛悬赏区看到这样一篇帖子[这个软件注册码有时间限制]
标题很新颖,于是就下载了(下载链接在文中末尾位置),发现破解起来很简单,两个跳转一改就行了,看到众多大佬已经回过解决方式,以为就此结束了。
软件用的是sql server的数据库,自带一个贼小巧的数据库服务端,想着以后写软件或调试软件方便,就把它留下了。
过了几天,看到楼主还在研究这个软件,应该是工作中要用到这个软件吧,害怕爆破存在暗桩,闲来无事,就分析一下吧。



如果你们打开软件有这个提示,请系统的数据格式里修改下短日期格式



改成这种带-的就行了。


运行了数据库服务端,打开软件,输入密码8968登陆,就来到了喜闻乐见的重启验证环节。
是不是很专业,4位一组,一共4组,很多刚入行的兄弟见到这样的场面可能就会犯晕,觉得太复杂了。
其实静下心来,慢慢分析,和普通的也差不多,就是表现形式有点不一样。



随便输入一组码遛它一下,看看是啥情况。


注册码检验和错误,还不是注册码错误,大致能推断出注册码先判断数据格式,再判断对错。


先查壳,无壳,Delphi写的,咱们先OD载入,看看情况,再决定用不用DeDe


直接能找到错误提示,看样子一个OD足矣了,确实要判断两次。


双击注册码检验和错误这行,转到代码窗口,就能看到关键跳,相等就能路过这个错误提示,如果爆破就改JMP


再向后拉一些,就能看到注册码的跳转了,要跳过这个错误提示,需要再向上看一点

相等就不跳,这样才能顺利走到下面的JMP来跳过错误,所以爆破这儿改NOP。

好了,爆破看完了,我们来研究下注册码。回到注册码检验和错误那儿,向上翻翻,咱们来跟一下。