新手破解练习Crackme160之155 - The_q.3
-
脱壳
PEiD查看有个未知的壳, OD载入使用ESP定律手动去壳, F8单步运行一次, 右侧寄存器ESP值变红, 此时点中并右键这个红值, 选择"HW break [ESP]", 即可下一个硬件访问断点(菜单->调试->硬件断点中可查看到), F9直接运行到断点处停下(00418096 jmp eax), F8进程真正的程序区域00401555, 此时右键选择使用OllyDump(方式2)可成功脱壳 -
去NAG
OD重新载入脱壳后程序, F8单步运行, 到00401561 call 00401275这句显示NAG界面, 所以, 直接nop掉这行可跳过弹框界面 -
修复
上两步调试时可知, 我们在OD内断点停下时, 电脑 其它东东都点不了了, 参照solly大佬的修改, 将00401613的nop改为jmp 00401636, 跳过键盘Hook, 既然是为了去hook, 那我们连dll也别加载了, 直接从头改起, 将00401603改为jmp 00401636, 中间的代码可以全nop掉也可以不用管, 反正程序已经执行不到了, 这样, dll也不用了, 程序可以独立使用了, (后记, 由于破解过程中一直无法成功读取注册表的值, 所以把00401131和0040119F这两处的代码改为push 0x20019, 百度可查这个RegOpenKeyExA的入参情况), 保存修正后程序 -
正常破解
重新载入修复后程序, 打开搜索界面, 看到了有注册表项, 定位到对应方法入口0040111D, F8单步执行到00401142处是访问注册表的, 所以对应的位置需要创建对应的key值 HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Users, 这个路径下新建一个字符串值CurrentUser, 数值为用户名(abc), 下面004011B0处又将这个用户名作为Users下级创建新的Key值 HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Users\abc, 里面也需要创建一个字符串值DirRoot, 对应的值为密钥文件\bookmark.htm的详细路径, 这样配置算是完成了, 接着便需要打开这个密钥文件, 并校验其内容是否包含 http://phrozencrew.org , 且不能在最开始的位置, 算法入口为00401000, 到此破解完成~ (我电脑win10系统死活无法读取注册表, 虚拟机中winXp成功读取)
1~160每个破解过程,在吾爱破解论坛都有高手破解过了,也有整理好现成的, 我这边主要就是自己动手操作的过程,与他们的不太一样
附上高手们的连接: 点击前往查看
使用的工具连接(工具有点多有点大,可以先下OD,其它的后面慢慢下) 点击前往下载
新人入门教程"玩玩破解,写给新人看" 点击前往查看
我就是从这里开始的,对我这样的小白感觉超级友好~
下面是我的OD的界面布局,我觉得这4个是最常用的界面,其它的我基本上没用到~


浙公网安备 33010602011771号