kn0sky 发表于 2023-7-3 23:24

Afroz Smart Accounting v5.1 破解分析

本帖最后由 kn0sky 于 2023-7-3 23:26 编辑


# Afroz Smart Accounting v5.1 破解分析

一次练习,发现了两个小技巧,跟大家分享分享

## 软件基本信息



## 去除试用次数限制

用x64dbg打开该程序,看到字符串:`You have18 uses left before....`​

搜索字符串引用,找到所在指令:



往上找有跳转的地方,看看是在哪里比较的剩余次数:



要是跳转走了,则进入:



显示使用次数用完,必须注册

这里可以直接改关键跳转为nop,即可绕过这里的检测

通过修改内存,把试用次数改成大于20的值,看看能不能正常运行:



并不行,这里出现了二次检测,继续搜字符串:`You must register...`​



可以看到,这里又出现了一次取值,和之前判断试用次数一样

这里又一次进行了相同的判断操作,如果小于等于0x14则跳转

这里的改法则是把这个jle改成jmp强制跳转,即可完成绕过

打好补丁,再次运行,程序就能启动了

## Trick1:检查是否存在其他限制

为了找出限制,我们需要先运行原始程序,点击进入,这里会弹框,标题是`Unregistered Software`​:



如果在其他地方存在限制,很可能也会用相同标题的提示框来显示提示信息

> 这是一个trick,用于找出软件的其他存在的限制

使用调试器运行刚刚打好补丁的程序,运行起来,进入主界面,搜索该标题字符串:



发现两处,依次点进去查看,第一个:功能是clear transaction,这里设置了限制



向上找到关键跳转,进行patch即可,这里改jmp之后,下面紧接着的jne也会跳转走,刚好跳过这个Not Allowed代码块,和unregistered software代码块



第二个:这是之前patch过的地方,不用管了就



## Trick2:去除试用信息标签和激活按钮

现在程序的界面如下:​



这里有个试用信息标签,还有个激活按钮,为了让程序显得不像试用版,可以把这玩意去掉,试用VB decompiler打开,找到该form对应的控件:





然后去010editor上搜索保存这个控件信息的地方,搜这个控件名也行,因为这个反编译程序没法直接修改,所以就需要通过010editor来进行修改,保存在这里的信息不是很多,但也有能完成目的的值,一般来说,很多信息都是连着保存的,这里关注这里的大小信息,这个255,就是FF,之前有个数据很大,后面有个11,也就是0x0B:



这里的0x1707是宽度,前面的06应该是一种表示这个结构对应的索引,后面0B也符合猜想,那么这里只需要把0xFF改成00,即可删去这个label

再次打开时,这个label已经看不到了:



对于旁边的Click here to activate按钮,也是同理:



找17 07 3b 01,后面跟了个03的位置:



把这个3b01改成0000即可:



应该算是彻底解除使用限制了吧hhhh

shsww 发表于 2023-7-4 06:25

你试试有没有功能限制

iokou 发表于 2023-7-4 07:07

本帖最后由 iokou 于 2023-7-4 07:11 编辑

嗯,纯暴力和谐,感谢分享;一直向往自己写个“优雅”的注册机

JYY1 发表于 2023-7-4 08:03

谢谢分享

dork 发表于 2023-7-4 09:24

应该 是没有暗桩了

123567a 发表于 2023-7-4 09:52

感谢分享啊

yxa52033 发表于 2023-7-4 09:53

没用过,还是点个赞

星空迷徒 发表于 2023-7-4 11:34

这个思路真赞,前几天一直在找改EXE删其中一些显示控件的方法,谢谢楼主

nbsoft 发表于 2023-7-4 16:57

非常不错 支持

hankv 发表于 2023-7-4 23:19

感谢分享,不忘学习{:1_927:}
页: [1] 2
查看完整版本: Afroz Smart Accounting v5.1 破解分析