本文主要是介绍深度剖析:黑神化悟空的防御机制,为何成为破解难题?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
深度剖析:黑神化悟空的防御机制,为何成为破解难题?
黑神话悟空还没发售就被破解? #国产游戏 #悟空 #西游记
推荐阅读:
全红婵抖音魅力无限,粉丝数量历史性突破1000万大关!
奥运激情日!8月9日赛事看点全解析,带你领略体育魅力
七夕不踩雷!MBTI类型恋人送礼指南,超实用推荐
海淀很潮,流行起来!一场关于创新与美学的盛宴
孙颖莎王楚钦首战告捷?悬念揭晓,精彩不容错过!
原文地址:https://www.bsw80.com/category-7.html
经过分析,黑神话的程序还暗藏了一个彩蛋,我感觉是用来嘲讽 d 加密破解团队皇后 n press 你想知道是什么吗?黑猴子反盗版的原理是什么?会拖慢游戏运行速度吗?看完本期视频你就知道了,为了搞清楚黑猴到底是如何防止盗版的,我又请来了喜欢逆向的变量。
首先必须要声明一下,破解游戏是违法行为,本视频不会传授任何破解方法。看了本视频也不会给黑神话悟空带来任何被破解的风险,所以请大家放心观看。首先作为单机游戏黑神话悟空的反盗版对抗点要搞清楚。对了,它的对抗核心思想就是不能脱离平台运行,这个平台就是 we game 和Steam,别看目标是那么简单,但为了实现却需要很大的功夫。通过我们的分析,游戏的反破解分为静态和动态两个层面。首先是静态层面,也是大家能感知到的,就是游戏程序文件变大了很多,我们打开 Steam 版本的游戏目录,我们看到悟空的主程序高达 800 多兆,而经过边量的分析,游戏文件膨胀了至少上百倍,里面有 151 万个函数,这就是代码膨胀的特征。为啥要代码膨胀呢?代码膨胀本身就是给原有代码添加无关的代码,目标当然是提高逆向破解的难度。
我们来看一个例子。当然黑猴是 C + + 边形,为了大家能理解,我用一个简单的 Python 程序来讲解一个函数实现了两个数相加,那么膨胀后的代码是这样的。可以看到这里增加了一个无用的随机数,一个无用的 range 检查,还有一个无用的 if 条件判断,而且这个 if 条件判断的逻辑永远不会触发,是不是这段代码给你看了之后需要更多的时间去理解,何况逆向你还看不到具体代码。你看到的还是一堆汇编代码,破解难度就增加了很多。然后我举的例子,代码撑死膨胀了 4 倍,而黑神话悟空的膨胀了上百倍,所以大家可以看到难度有多大。除了代码膨胀,还有代码混淆、代码等价交换,目的都是为了提高立项工程的难度,拖延被破解的时间。
除了这个黑猴悟空还有非常多的地方,他入了 CPU ID。经过边量的统计,至少有 3, 000 多次 CPU ID,插入 CPU ID 指令可以获取 CPU 的详细信息,说白了就是获取计算机硬件唯一标识符,这在反盗版的领域,特别是软件本地授权非常重要,可以有效防止游戏程序被非法拷贝。
除了这一点,通过 CPU ID 还可以判断当前环境是不是虚拟机,毕竟很多地下工程都是要在虚拟机下进行的,所以真的要破解难度可能真要堪比登天了。以上就是静态层面的反破解了,接下来就是游戏的运行过程中动态反破解,如何动态反破解的?那就是哈希,哈希可以理解为数字指纹,你只要知道指纹能代表内容的唯一性就可以了,只要内容变了一个字节,指纹就变了。这个哈希主要针对三个地方,一个是系统核心的 d l、 n t DL kernel 32、 kernel base。还有一个是进程环境快PEB,还有一个是共享数据结构 k user share data 系统核心 DL 检查主要是防止注入破解代码到这几个 DL 中。进程块 PEB 的哈希是 Windows 操作系统中的一个进程级的数据结构,包含了与进程相关的多个信息,比如加载的模块列表、命运行参数等等。 PEB 检查用于判断是否存在板调试或者进程环境被修改。游戏程序可能会通过检查 PEB 的结构中的标志位,例如 PEB 点 Bing debug 来判断进程是否处于调试状态。哈希值的变化可以提示此类修改可以。
user share data 是 Windows 内核中的一个共享数据结构,所有用户模式进程都可以读到其中的信息。该结构包含了一些全局变量,比如系统时间时区信息、版本信息等等。通过检查这部分的数据变化,可以判断游戏是否被调试。可以看到这三种检查的目的就是反调试,反调试的技术主要目的是增加软件运行时逆向工程的难度,通过阻止调试器,从而阻止调试器的正常工作回到刚开始的问题,黑猴的反破解技术有没有影响游戏的性能?我的答案是肯定的,但这个影响是不好估算的,毕竟我目前也拿不到脱密版的游戏,只能说你对电脑 CPU 性能越差影响越大。如果你玩黑猴的帧数主要的天花板是显卡,那么说明反破解并没有影响到你。
以上是黑猴子主要反破解手段,当然可能还有其他地方,如果评论区里有人知道,可以补充。另外边亮还发现了一个有趣的点,就是这个游戏是有特殊接口,具体接口怎么进我就不方便公开透露。只不过这个借口里面带了一个密钥,很有趣,是一个女人的名字。我感觉是为了嘲讽帝家密破解小组 m press 皇后而设,后续变量将为大家揭开这层面纱。记得关注它,黑神话悟空作为国产第一款 3A 大作,销量已经破了 1, 000 万套,之所以有这么喜人的成绩,我想游戏本身的防盗版技术实力和广大玩家对正版游戏的观念转变有很大的关系。我依然记得当年仙剑 4 上市的时候满大街的破解版以及上海软新官方网站再见若有缘这五个字,所以游戏商业的成败和是否能扛住破解尤为重要。作为曾经的游戏从业者,看到黑神话悟空的成功,我自然非常欣慰,我希望这款游戏能成为火种,点燃更多中国 3A 单机游戏。大家是不是和我有一样的想法,让国产游戏不等于氪金网游。
这篇关于深度剖析:黑神化悟空的防御机制,为何成为破解难题?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!