吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3742|回复: 7
收起左侧

[会员申请] 申请会员ID:firef0x【申请通过】

[复制链接]
吾爱游客  发表于 2018-1-15 16:39
1、申请会员ID:firef0x
2、个人邮箱:firef0x@163.com
3、原创技术文章:

记一次诡异的破解过程【我是航空管制官4(ATC4)盗版汉化再封装安装包】

最近在某论坛看到一个很狗血的东西,有人将“我是航空管制官4”这款游戏进行了破解汉化,然后重新打包,号称免费下载,但是安装的时候要个神马序列号,此序列号售价数十元不等。。。。
关键是这个论坛的人还有这种脑残言论:“XX是盗版下载基地的ATC4资源,我是自购正版并破解汉化的。XX是拿别人作品来卖钱的,仗着版权说事,性质不一样。XX流氓出名了。”
01.购买.png

WTF。。。还有这种操作。。。。。

实在看不下去了,于是默默的摸出了很久不用的工具。。。(以前的工具在一次硬盘事故中全丢了,图方便下了个贵坛的虚拟机,一并表示感谢!)

该“盗版Plus”游戏在安装过程需要序列号,安装包只有一个exe,下载地址在此:https://pan.baidu.com/s/1qYk4Y6K,提取码4ek4

首先是分析安装包
01.分析.png

可见是NSIS打包的安装包,游戏数据以Overlay的方式,使用7Z LZMA算法压缩保存
用通用解压工具解压报错,看来是使用修改版的NSIS制作的。
既然无法直接解压,那还是上OLLY吧

到序列号输入窗口看看,msgbox方式的提示
02.序列号.png

使用OllyDbg打开安装包,下断bpx MessageboxA,跑一圈下来风平浪静。。。。额,不是MessageboxA,经验主义还是要不得。
用C32ASM打开看看输入表,果然,MessageBoxIndirectA,再次下断开跑。
03.输入表.png

断在405477,下一步就是弹出错误信息了,此时在参考中查找错误信息,发现其内存地址7BD700,在此地址加个内存写入断点,看看是什么地方修改了它,顺藤摸瓜。
04.bpxM01.png

04.bpxM02.png

重新将程序跑起来,一路F9耐心寻找第一次写入错误信息的代码,在此过程中发现了一个有趣的现象
从7BD700这个地址看到,程序释放了一个dll到临时文件夹并加载了它:"C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\nsf4.tmp\NSISdl.dll"
06.释放.png

05.加载.png

度娘了一下,这是NSIS的下载模块,看看堆栈,调用过程中使用了参数"download_quiet",应该是程序调用这个模块下载了什么东西,这在寄存器和堆栈里面也能看到,只是没下到,结果是"HTTP/1.1 404 Not Found"。
07.下载.png

继续观察7BD700,出现了下载地址字符串:"http://47.89.26.137:2824/ATC4nin1/V2CN/.z",看到"ATC4nin1",应该不是什么运行所需文件,难道就是验证文件?".z"是什么鬼。。。。
08.下载文件.png

准备再观察一遍,重置程序,下好内存断点,随便输一个序列号开跑。
hehe,果然是在这个地方验证,这种嘲讽性质的序列号当然是404 Not Found咯。
09.序列号.png

再看看这个地址是哪来的,从堆栈下拉往回看,第一个入栈的调用405D60炒鸡可疑,下断F9继续。
11.堆栈.png

观察两次规律之后,在程序开始使用下载地址填充7BD700之前成功断下,F8跟进,看到逐字节填充7BD700的过程。
12.修改点.png

F8继续追几步,看到从7F7CBB3开始逐字节读取地址的地方,数据窗口跟随7F7CBB3,找到定义下载地址的字符串。
可以看到下面还用了个del.php删除已用key的字符串,看来这些奇葩为了防止序列号被重复使用也是煞费苦心啊。
13.读取字符串.png

因为是通过http协议下载的,为了继续验证,现在只能自己用绿色的服务端,随便新建一个文本文件改名叫stupid.z,内容为了好追踪,就用11223344吧,再把7F7CBB3的下载地址修改成自己的假地址,让它能下到,看程序下一步怎么操作。
10.server.png

当我认为还要继续追踪程序下载后,要继续计算验证码的时候,验证就这么过了。。。这么过了。。。么过了。。。过了。。。了。。。。[笑哭],破解莫名其妙完成!
15.Pass.png

既然过了也就懒得研究了,注册机神马的肿么写也懒得研究了,知道原理用一些现成的工具就可以实现破解。破解方法文字版如下:

序列号验证地址为:下载"http://47.89.26.137:2824/ATC4nin1/V2CN/"+序列号+".z"
使用cheat engine搜索字符串替换为自建服务器的文件地址即可。
不过为了保险起见,自建服务器的时候文件路径根据原始地址进行调整,保持修改前后长度一致,如:
http://47.89.26.137:2824/ATC4nin1/V2CN/ 替换为
http://192.168.0.1/charpatchxxxxxxxxxx/ 保持长度一致即可。

从路径不难猜出,该站所有的安装包应该都是用的这种弱鸡的验证手法,其他安装包搜索这个IP地址转到内存地址观察后面的路径即可。

以上。

心得:
1.经验主义实在要不得
2.有些验证手段简直匪夷所思,需要在跑调试的过程中多观察,发现异常及时跟进处理,说不定就有意外收获。
14.修改字符串.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2018-1-15 17:22
I D:firef0x
邮箱:firef0x@163.com

申请通过,欢迎光临吾爱破解论坛,期待吾爱破解有你更加精彩,ID和密码自己通过邮件密码找回功能修改,请即时登陆并修改密码!
登陆后请在一周内在此帖报道,否则将删除ID信息。

ps:虽然技术含量未达到精华标准,但条理清晰,给予通过,登录后把文章整理一下发到脱壳破解区吧。
firef0x 发表于 2018-1-15 17:49
谢谢版主!

很久没玩逆向了,这是最近手痒弄的,水平有限,让大家见笑了。
小龙521 发表于 2018-1-15 18:33 来自手机
a110220301 发表于 2018-1-16 08:27 来自手机
论坛有你更精彩 欢迎加入
firef0x 发表于 2018-1-16 11:36
报道是肿么搞?

新人报道
U1314970 发表于 2018-1-16 23:57 来自手机
支持楼主
尘世风铃 发表于 2018-1-17 00:20
欢迎楼主加入吾爱大家庭
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 15:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表