针对某p社游戏某整合包的研究
软件分析
垃圾re手 最近在玩群星 创意工坊里面下载了整合包 进群下载排序文件后竟然发现要付费()
28R够吃一顿好的 马上来分析一下这个软件
这是一个四版整合包的mod安装器 其中樱花远征和新星纪元是需要拿邀请码的
背景:群星的mod很多 为了避免mod冲突有一个mod排序 这个软件就是干这件事的
好哇
解决方案一
dnspy64位打开 直接开调
根据结构随便输入一个邀请码 理所应当的验证失败 这时候我们回到dnspy暂停一下
去调用堆栈窗口看看是谁创建了这两个字符串
我们转到这里 向上翻一下
很明显的调用逻辑
我们可以尝试看看一下这个检验if的函数的逻辑 万一能写出一个注册机呢()
我们在第一个if处下断 重新运行一下看看这个检验的逻辑
跟入我们发现 这个函数是通过和服务器检测的 并且因为我不想花钱所以并不知道这个服务器返回内容()
所以试探一下 把这个函数的return值由false改为true
继续执行果然破解成功了....
然后点击开始安装即可!
完全没有难度.....
所以如果想做出这个软件的破解版可以直接patch这段代码 让他恒返回true值即可
解决方案二
我们接下来再分析一下这个软件的安装mod过程
可以先安装这个软件内免费的繁星物语整合包 能很明显的发现这个还原备份按钮嘛
根据一般的逻辑 这个还原备份和安装mod应该是同一个逻辑调用 我们先把这个备份文件找到
对软件下断 开始安装 找到这个安装的逻辑
或者通过搜索关键词install找到两个函数
installtype1和installtype2函数几乎一致 猜测就是使用的文件不同 我们能一眼看到这个显眼的unzip函数
对两个函数的unzip处都下断! 点击开始安装!
看到zip 右键保存!
打开一看
PK头 稳了 直接改后缀解压!
芜湖 这就是他安装所用的文件 和他备份文件一模一样 我们直接把他复制到游戏目录/bkp/下 随便点一个还原备份 然后进入游戏(
)
安装成功!