Loading

针对某p社游戏某整合包的研究

软件分析

垃圾re手 最近在玩群星 创意工坊里面下载了整合包 进群下载排序文件后竟然发现要付费()

28R够吃一顿好的 马上来分析一下这个软件

image-20211228172752351

这是一个四版整合包的mod安装器 其中樱花远征和新星纪元是需要拿邀请码的

背景:群星的mod很多 为了避免mod冲突有一个mod排序 这个软件就是干这件事的

image-20211228172506227

好哇

解决方案一

dnspy64位打开 直接开调

image-20211228172943791

根据结构随便输入一个邀请码 理所应当的验证失败 这时候我们回到dnspy暂停一下

image-20211228173023879

去调用堆栈窗口看看是谁创建了这两个字符串

image-20211228173052584

我们转到这里 向上翻一下

image-20211228173128472

很明显的调用逻辑

我们可以尝试看看一下这个检验if的函数的逻辑 万一能写出一个注册机呢()

我们在第一个if处下断 重新运行一下看看这个检验的逻辑

image-20211228173304614

跟入我们发现 这个函数是通过和服务器检测的 并且因为我不想花钱所以并不知道这个服务器返回内容()

所以试探一下 把这个函数的return值由false改为true

image-20211228173435048

继续执行果然破解成功了....

然后点击开始安装即可!

完全没有难度.....

所以如果想做出这个软件的破解版可以直接patch这段代码 让他恒返回true值即可

解决方案二

我们接下来再分析一下这个软件的安装mod过程

可以先安装这个软件内免费的繁星物语整合包 能很明显的发现这个还原备份按钮嘛

根据一般的逻辑 这个还原备份和安装mod应该是同一个逻辑调用 我们先把这个备份文件找到

image-20211228174105581

对软件下断 开始安装 找到这个安装的逻辑

或者通过搜索关键词install找到两个函数

image-20211228174248817

installtype1和installtype2函数几乎一致 猜测就是使用的文件不同 我们能一眼看到这个显眼的unzip函数

对两个函数的unzip处都下断! 点击开始安装!

image-20211228174517000

看到zip 右键保存!

打开一看image-20211228174716884

PK头 稳了 直接改后缀解压!

image-20211228174749700

芜湖 这就是他安装所用的文件 和他备份文件一模一样 我们直接把他复制到游戏目录/bkp/下 随便点一个还原备份 然后进入游戏(

)

image-20211228175648978

安装成功!

posted @ 2021-12-28 18:04  FW_ltlly  阅读(4586)  评论(20编辑  收藏  举报