【Unity游戏破解】外挂原理分析

简介: 【Unity游戏破解】外挂原理分析


认识unity

打包目录结构

dll一般很大,因为里面是所有的游戏功能编译成的二进制码

游戏逆向流程

开发人员代码被编译打包到GameAssembly.dll中

使用il2ppDumper工具,并借助游戏名

_Data\il2cpp_data\Metadata\global-metadata.dat恢复符号

使用IDA对该dII进行反编译

分析核心逻辑实现的代码(相对Mono困难)

根据分析结果对代码进行patch,实现某种变态功能.

Unity游戏攻击面

数值修改

锁血

飞天

无限金币

攻击力翻倍

离谱功能

透视

自瞄

压枪

瞬移

内购破解

可被攻击原因

Unity引擎打包方式成为了外挂开发的帮凶!

mono的打包

C# 是解释型的语言–支持反射-----这个缺陷,可以非常容易恢复打包的函数名,变量名

建议方案

锁血

CE来搜索数值,去确定血量的变量

然后把他固定

用IDA分析血量减(sub)的指令,给他nop掉,就不会扣血

飞天

管人物的高是z这个变量,不停修改人物处在的位置,CE 走坡,走底,锁定Z的变量

无限金币

数字修改,就是内存挂

大同小异,和前面的

去覆盖金币的变量

攻击力翻倍

找到攻击力是哪个变量,去更改攻击力

以上统称内存挂

内存就比如说无后,X特效,广角,不过内存都容易封

透视

去读内存里的数据

自瞄

去找人物的骨骼系统,把准星设置到骨骼就是自瞄了

压枪

看枪后座的实现,可能是一个浮点类型的变量,根据手按左键的时间影响弹道轨迹

瞬移

存在传送的功能,实现了一个传送的函数,调用了就可以

有的直接修改人物坐标

内购破解

找到联网支付的模块在那里,根据返回值判断是否购买,把相应的那一块做一下patch

这是以前的方法,比如滑雪大冒险一样的游戏

Unity游戏防御

开发时注意数据安全

接入第三方反作弊系统

TP

EAC(Easy Anti Cheat)

VAC(Valve AntiCheat)-----------CSGO用

Battleye Anticheat

easy-anticheat 好像是直接扫内存吧

外挂检测思路

符号混淆

变量值混淆

文件完整性校验

调试器检测、阻止调试器附加—无法动态分析了

检测内存编辑工具(Cheat Engine等)

基于签名的内存完整性检测

检测dII注入----常见,外挂都是写成个DLL

检测APIHook----比如透视,hook 一下图形API的函数,可以通过检测常用的函数是否被hook

封锁内存读写----不让在应用层读写内存,上驱动保护的那种

统计异常检测------统计一段时间内游戏崩溃多少次

狠人自爆

实战

查看目录结构

看到unityplayer

猜测打包方式,看Data里面猜测是il2cpp

用il2cpp dumper

把游戏拖进去

搜索getflag

用框架脚本

mono打包方式

例子2-森林

用il2cppDumper去分析

who is he

mono打包方式,就跟源码差不多

相当于看到源码

后记

推荐阅读:r3kapig:校园明星ctf 战队的奇幻养成之旅


🌸I could be bounded in a nutshell and count myself a king of infinite space.

特别鸣谢:木芯工作室 、Ivan from Russia


相关文章
|
2月前
|
图形学 C#
超实用!深度解析Unity引擎,手把手教你从零开始构建精美的2D平面冒险游戏,涵盖资源导入、角色控制与动画、碰撞检测等核心技巧,打造沉浸式游戏体验完全指南
【8月更文挑战第31天】本文是 Unity 2D 游戏开发的全面指南,手把手教你从零开始构建精美的平面冒险游戏。首先,通过 Unity Hub 创建 2D 项目并导入游戏资源。接着,编写 `PlayerController` 脚本来实现角色移动,并添加动画以增强视觉效果。最后,通过 Collider 2D 组件实现碰撞检测等游戏机制。每一步均展示 Unity 在 2D 游戏开发中的强大功能。
82 6
|
1月前
|
测试技术 C# 图形学
掌握Unity调试与测试的终极指南:从内置调试工具到自动化测试框架,全方位保障游戏品质不踩坑,打造流畅游戏体验的必备技能大揭秘!
【9月更文挑战第1天】在开发游戏时,Unity 引擎让创意变为现实。但软件开发中难免遇到 Bug,若不解决,将严重影响用户体验。调试与测试成为确保游戏质量的最后一道防线。本文介绍如何利用 Unity 的调试工具高效排查问题,并通过 Profiler 分析性能瓶颈。此外,Unity Test Framework 支持自动化测试,提高开发效率。结合单元测试与集成测试,确保游戏逻辑正确无误。对于在线游戏,还需进行压力测试以验证服务器稳定性。总之,调试与测试贯穿游戏开发全流程,确保最终作品既好玩又稳定。
47 4
|
2月前
|
图形学 缓存 算法
掌握这五大绝招,让您的Unity游戏瞬间加载完毕,从此告别漫长等待,大幅提升玩家首次体验的满意度与留存率!
【8月更文挑战第31天】游戏的加载时间是影响玩家初次体验的关键因素,特别是在移动设备上。本文介绍了几种常见的Unity游戏加载优化方法,包括资源的预加载与异步加载、使用AssetBundles管理动态资源、纹理和模型优化、合理利用缓存系统以及脚本优化。通过具体示例代码展示了如何实现异步加载场景,并提出了针对不同资源的优化策略。综合运用这些技术可以显著缩短加载时间,提升玩家满意度。
47 5
|
1月前
|
前端开发 图形学 开发者
【独家揭秘】那些让你的游戏瞬间鲜活起来的Unity UI动画技巧:从零开始打造动态按钮,提升玩家交互体验的绝招大公开!
【9月更文挑战第1天】在游戏开发领域,Unity 是最受欢迎的游戏引擎之一,其强大的跨平台发布能力和丰富的功能集让开发者能够迅速打造出高质量的游戏。优秀的 UI 设计对于游戏至关重要,尤其是在手游市场,出色的 UI 能给玩家留下深刻的第一印象。Unity 的 UGUI 系统提供了一整套解决方案,包括 Canvas、Image 和 Button 等组件,支持添加各种动画效果。
72 3
|
1月前
|
设计模式 存储 人工智能
深度解析Unity游戏开发:从零构建可扩展与可维护的游戏架构,让你的游戏项目在模块化设计、脚本对象运用及状态模式处理中焕发新生,实现高效迭代与团队协作的完美平衡之路
【9月更文挑战第1天】游戏开发中的架构设计是项目成功的关键。良好的架构能提升开发效率并确保项目的长期可维护性和可扩展性。在使用Unity引擎时,合理的架构尤为重要。本文探讨了如何在Unity中实现可扩展且易维护的游戏架构,包括模块化设计、使用脚本对象管理数据、应用设计模式(如状态模式)及采用MVC/MVVM架构模式。通过这些方法,可以显著提高开发效率和游戏质量。例如,模块化设计将游戏拆分为独立模块。
72 3
|
2月前
|
图形学 开发者 存储
超越基础教程:深度拆解Unity地形编辑器的每一个隐藏角落,让你的游戏世界既浩瀚无垠又细节满满——从新手到高手的全面技巧升级秘籍
【8月更文挑战第31天】Unity地形编辑器是游戏开发中的重要工具,可快速创建复杂多变的游戏环境。本文通过比较不同地形编辑技术,详细介绍如何利用其功能构建广阔且精细的游戏世界,并提供具体示例代码,展示从基础地形绘制到植被与纹理添加的全过程。通过学习这些技巧,开发者能显著提升游戏画面质量和玩家体验。
67 3
|
2月前
|
图形学 数据可视化 开发者
超实用Unity Shader Graph教程:从零开始打造令人惊叹的游戏视觉特效,让你的作品瞬间高大上,附带示例代码与详细步骤解析!
【8月更文挑战第31天】Unity Shader Graph 是 Unity 引擎中的强大工具,通过可视化编程帮助开发者轻松创建复杂且炫酷的视觉效果。本文将指导你使用 Shader Graph 实现三种效果:彩虹色渐变着色器、动态光效和水波纹效果。首先确保安装最新版 Unity 并启用 Shader Graph。创建新材质和着色器图谱后,利用节点库中的预定义节点,在编辑区连接节点定义着色器行为。
96 0
|
2月前
|
图形学
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
小功能⭐️获取Unity游戏物体上,所挂载组件的名称
|
1月前
|
图形学 C++ C#
Unity插件开发全攻略:从零起步教你用C++扩展游戏功能,解锁Unity新玩法的详细步骤与实战技巧大公开
【8月更文挑战第31天】Unity 是一款功能强大的游戏开发引擎,支持多平台发布并拥有丰富的插件生态系统。本文介绍 Unity 插件开发基础,帮助读者从零开始编写自定义插件以扩展其功能。插件通常用 C++ 编写,通过 Mono C# 运行时调用,需在不同平台上编译。文中详细讲解了开发环境搭建、简单插件编写及在 Unity 中调用的方法,包括创建 C# 封装脚本和处理跨平台问题,助力开发者提升游戏开发效率。
48 0
|
1月前
|
vr&ar 图形学 API
Unity与VR控制器交互全解:从基础配置到力反馈应用,多角度提升虚拟现实游戏的真实感与沉浸体验大揭秘
【8月更文挑战第31天】虚拟现实(VR)技术迅猛发展,Unity作为主流游戏开发引擎,支持多种VR硬件并提供丰富的API,尤其在VR控制器交互设计上具备高度灵活性。本文详细介绍了如何在Unity中配置VR支持、设置控制器、实现按钮交互及力反馈,结合碰撞检测和物理引擎提升真实感,助力开发者创造沉浸式体验。
71 0