当前位置: 首页 > news >正文

游戏如何对抗定制挂

近年来,游戏安全对抗强度相比以往更加激烈,具体表现在“定制挂”趋势显著。在近期收集的近万款外挂样本中,定制挂约占比78%,常见的内存修改器、变速器等通用作弊手段占比正在下降。

所谓定制挂,是指针对某款游戏单独开发的外挂。其在实现方式上与通用类外挂有较大区别,定制挂实现手段多为“注入攻击”,实现原理多样且产生后果影响恶劣,需要厂商投入更多的精力进行对抗。

游戏面临的外挂类型占比图

从注入过程上,Android系统一般采用 SO 注入、ptrace 注入、 Zygote 注入和感染 ELF 文件的方式实现注入过程。iOS系统在越狱后可以利用 Cydia 框架注入 dylib 实现。

Android平台导入表Hook流程图

外挂作者会通过多种手段,分析游戏的代码逻辑,并针对性的开发外挂功能模块,将其注入到游戏进程空间中,同时执行功能模块的入口函数。

定制挂具体表现为带外挂有功能控制菜单,通过菜单控制开启外挂后,作弊玩家可以通过控制菜单选择不同的功能。定制挂收到指令后,会调用对应的接口函数以Hook操作来挂钩相应函数、改写参数或者通过调用逻辑,从而实现丰富多样的外挂功能。

某游戏定制挂案例

与通用作弊相比,定制挂修改游戏代码逻辑的方式更加灵活多样,并且外挂作者会想尽各种办法隐藏注入模块,导致定制挂的排查难度更高、排查周期更久。

自带隐藏模块的LSPosed框架

据观察,定制挂开发门槛较高,会收取高额费用并控制同款外挂的使用人数,在外挂的样本量数据变少、部分特征被隐藏的情况下,对于游戏安全系统的检测精准性是一次不小的考验。

针对游戏面临的定制挂风险,FairGuard会通过游戏类型、玩法与对抗现状,提供针对性解决方案,主要包含如下功能:

主动识别恶意模块机制

区别于市面上其他安全产品,需要获取样本后进行外挂打击,FairGuard独家「主动识别恶意模块机制」可对游戏内可疑模块进行主动识别,搭配在线打击功能做到主动防御,大幅缩短外挂排查周期。

防改包功能

采用FairGuard业界独家技术「无API签名校验技术」,对游戏的引擎与代码进行加密处理,可以针对游戏包签名和文件完整性进行多重校验,防止游戏被植入恶意模块、剔除广告等。

反注入器功能

禁止使用Xposed、Frida等各种外挂模块注入器,防止注入后修改游戏内存等各种恶意行为,一旦发现立即闪退。

反调试功能

防止外挂作者对游戏进行调试,阻止对游戏的静态或动态分析,一旦发现立即闪退。

安全环境检测功能

不同于市面上其他产品,FairGuard加固采用更底层的检测手段,可精准识别虚拟框架、虚拟机、越狱、ROOT、云手机等各类风险环境,并提供个性化闪退策略。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • MATLAB矩阵下标引用
  • C语言中的一些小知识(二)
  • 【C#】vs2022 .net8
  • 分布式事务学习笔记(二)Seata架构、TC服务器部署、微服务集成Seata
  • 若依VUE项目安全kind-of postcss vite漏洞扫描和修复
  • 常见面试题之计算机网络
  • Linux内核结构
  • “msvcr120.dll丢失”的错误提示应该如何修复?几种修复方法详细介绍
  • 【有啥问啥】深入解析:机器学习中的过拟合与欠拟合
  • cadence SPB17.4 - allegro - 用板子外形创建整板铺铜
  • Android IME输入法启动显示隐藏流程梳理
  • 有效安全计划评估的基本指标
  • 茴香豆:企业级知识问答工具实践闯关任务
  • Win10 录屏秘籍大公开:从新手到高手的进阶之路
  • Golang | Leetcode Golang题解之第419题棋盘上的战舰
  • golang 发送GET和POST示例
  • PHP的Ev教程三(Periodic watcher)
  • Python 基础起步 (十) 什么叫函数?
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • Shell编程
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • SpringBoot几种定时任务的实现方式
  • 编写高质量JavaScript代码之并发
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 老板让我十分钟上手nx-admin
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 模型微调
  • 如何用vue打造一个移动端音乐播放器
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 微信小程序:实现悬浮返回和分享按钮
  • 小程序测试方案初探
  • 用Python写一份独特的元宵节祝福
  • LevelDB 入门 —— 全面了解 LevelDB 的功能特性
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​​​【收录 Hello 算法】9.4 小结
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • $.type 怎么精确判断对象类型的 --(源码学习2)
  • (03)光刻——半导体电路的绘制
  • (1) caustics\
  • (19)夹钳(用于送货)
  • (30)数组元素和与数字和的绝对差
  • (52)只出现一次的数字III
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (web自动化测试+python)1
  • (阿里云万网)-域名注册购买实名流程
  • (安卓)跳转应用市场APP详情页的方式
  • (附源码)计算机毕业设计高校学生选课系统
  • (过滤器)Filter和(监听器)listener
  • (理论篇)httpmoudle和httphandler一览
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (三)模仿学习-Action数据的模仿
  • (十一)手动添加用户和文件的特殊权限