title: Mr Bills v2.1 破解分析 date: 2023-03-13T09:44:12Z lastmod: 2023-03-13T12:55:20Z
Mr Bills v2.1 破解分析
软件基本信息
软件名称 | 软件版本 | 编程语言 | 加壳情况 | 难度 | 难度说明 | 练习日期 |
---|---|---|---|---|---|---|
Mr Bills | v2.1 | C++,MFC | 无壳 | 中等 | 2023.03.13 |
破解过程:
根据注册错误提示弹窗定位校验点
可以看到,这里应该是校验函数,跳转通过判断al的值进行,也就是校验函数的返回值,如果返回0,则进入失败分支
进入注册函数看内部,看看al返回值在哪里被赋值:
可以看到,这里最后的返回值来自一个全局变量,接下来去向上追着看这个全局变量的值哪来的:
全局变量的赋值来自于函数406FD1的返回值,追进该函数看看:
在最后从bl给al赋的值,这里要暴力破解只需要patch这里即可,改成mov al,1
即可
再次打开:
注意,一般情况下,不要去改跳转,因为改了跳转,只能影响到当前位置的程序的运行,对于在其他地方调用注册函数的判断就没用,所以修改注册函数让注册验证结果永远返回真就好