逆向学习笔记03——reg验证
逆向学习笔记03——reg验证
1.查SE壳
(1)看前几行代码ascii码

结果:

(2)分析代码

结果:

2.思路
已知限制使用次数的方法是注册表(REG)验证,即把使用次数写入注册表,每次程序打开时,就把使用次数加一,若满则弹窗。
因此结合上节学习的文件验证得思路。先查MSDN得 打开注册表的函数。

不知道是单字节还是双字节,全部下断点。

然后根据堆栈窗口找到写入的注册表文件进行修改即可

3.程序报错:se壳的保护措施,CC检测机制的跳过。
把原CC断点暂时禁用掉,然后在其附近下断点即可绕过

4.实例
在长时间检测上诉2函数后没有找到相关的注册表,在此找到MSDN 我们发现了新函数

设断点断下来后,找到注册表路径

但发现路径有缺省,观察堆栈后,发现0012F68C 这个地址的值估计就是缺省的路径了。
这歌值代表的路径
小知识:

此句柄与注册表一一对应的。很有可能0012F68C的值就宏定义为这些地址中一个
我们可以通过MSDN查看 也可以用VC 查句柄的头文件描述,这里用方法二。

于是我们找到了使用此时的注册表文件,发现是加密过了的,这里我们就不破解了,直接删掉即破解成功。

浙公网安备 33010602011771号