上图是acid burn软件的效果,我个人就把他理解为一个注册的模拟软件,在不知道注册码的情况下,如何逆向分析出正确的注册码,并且注册成功。
第一步,直接用X32DBG附加
第二步,给系统弹窗消息下断,这个软件用到的是MessageBoxA
第三步,下好断之后,在软件上点Check it按钮,让他弹出失败的消息提示,然后根据提示往前跟,一直跟到软件判断成功和失败的地方
在MessageBoxA方法断下来之后,一直按Ctrl+F9,再按F7,一直到这个位置,你会很清晰的看到下面有Sorry,The serial is incorect!的提示,并且在上面还能看到一个Good job dude的信息。那在这里我们可以大胆的猜测,上面是提示注册成功,下面是注册失败。
那通过这些明文信息,可以看出,我自己写的注册码是22222222,这个判断注册码的方法传了2个参数,一个是我填的注册码,那另一个猜测一下是不是正确的注册码呢,只需要把这一串字符串输入测试一下就知道结果了
果然,提示注册成功了。
这种软件逆向分析非常简单,大家只需要一步步的往上跟就可以找到了。