鸿运彩双色球 普通版和白金版 通杀补丁制作教程
本帖最后由 gxr2016 于 2017-11-2 20:42 编辑鸿运彩双色球 普通版和白金版 通杀补丁制作教程
软件下载地址:http://www.501w.net/
逆向工具:查壳工具(PEID)、调试工具(OD)、补丁制作工具(Baymax)
这里以鸿运彩双色球白金版5.30为例分析。
1、查壳:ASPack v2.12
2、脱壳(此步骤可以省略),如果脱壳还要去除退去暗桩(这个步骤就不演示了)
3、运行软件,查找相关逆向线索,最终确定使用暂停法
OD载入,ESP定律,到达OEP,F9运行,注册,输入假码,注册,出现提示框,使用暂停法
找到关键代码
0051C626 .C705 C0A07A00 01000000 mov dword ptr ds:,0x1
0051C630 .C705 40A07A00 01000000 mov dword ptr ds:,0x1
0051C63A .C705 3CA07A00 01000000 mov dword ptr ds:,0x1
分析发现0x7AA0C0、0x7AA040、0x7AA03C这三个地址值导致软件功能限制和显示是否注册
在这三个地址处下硬件访问断点,最终来到关键处
004FF1E7 . /0F84 07000000 je _UnPacke.004FF1F4
004FF1ED . |B8 01000000 mov eax,0x1
004FF1F2 . |EB 05 jmp short _UnPacke.004FF1F9
004FF1F4 \B8 00000000 mov eax,0x0
004FF1F9 >85C0 test eax,eax ;kernel32.BaseThreadInitThunk
004FF1FB 0F84 23000000 je _UnPacke.004FF224
004FF201 .C705 40A07A00 01000000 mov dword ptr ds:,0x1
004FF20B .C705 3CA07A00 01000000 mov dword ptr ds:,0x1
通过分析可以得到结论,只需要将
原码:
004FF1F4 \B8 00000000 mov eax,0x0
改为:
004FF1F4 B8 01000000 mov eax,0x1
即可实现:
004FF201 .C705 40A07A00 01000000 mov dword ptr ds:,0x1
004FF20B .C705 3CA07A00 01000000 mov dword ptr ds:,0x1
004FF215 .B8 01000000 mov eax,0x1
0x7AA040、0x7AA03C内存地址即为1(功能限制)
继续F8单步,会发现,eax值最终会赋值给0x7AA0C0(是否注册标志)
4、制作补丁
制作补丁所需数据:
0062A5B7|.FF15 50136700call dword ptr ds:[<&KERNEL32.GetVersion>;kernel32.GetVersion
B8 00 00 00 00
B8 01 00 00 00
注意内存地址:004FF1F4,基址:00400000
运用补丁,成功逆向,所有功能全部有效。
教程及补丁地址:
**** Hidden Message *****
本帖最后由 gxr2016 于 2017-11-2 20:47 编辑
录个视频不容易,这个视频录了三次才成功,希望大家多多支持。
这次提供的补丁只能用在白金版5.30这个版本上,通杀版本就不放了。
如果反映好,会考虑发个通杀补丁的。
支持LZ,小分送上 谢谢楼主分享{:7_236:} 感谢楼主分享,500W就看这个了 谢谢分享。 学习一下,谢谢分享 好好学习,天天上吾爱汇编! - 分享精神,是最值得尊敬的!