游戏如何应对内存修改

据观察,近年来游戏黑灰产攻击角度多样化趋势显著,主要面临工作室、定制注入挂、模拟点击挂、内存修改挂、破解版等多方面安全问题。

据FairGuard数据统计,在游戏面临的众多安全风险中,「内存修改」攻击占比约为13%,主要实现方式为获取高权限后使用内存修改器对游戏内存进行篡改。

FairGuard数据统计:游戏安全风险占比

FairGuard数据统计:游戏安全风险占比

内存修改器的本质是具备内存查找、修改功能的通用或者自定义作弊工具。其变种众多,在不同的系统都有其身影:如 Android 端常见的GameGuardian 修改器、iOS端的 iMemEditor 修改器、PC端的 Cheat Engine 修改器。

本文我们将通过实际案例对常见内存修改器进行分析并提出解决方案。

◆ GameGuardian 修改器

GameGuardian(俗称GG修改器),可提供手动的内存搜索、修改功能。如下图演示,通过GG修改器对游戏商品售价这一数据进行多次搜索,确定内存地址,再对其进行篡改,实现了无消耗购买游戏道具的功能。

通过修改商品售价实现无消耗购买道具

通过修改商品售价实现无消耗购买道具

此外,GG修改器还支持脚本调用,通过脚本可实现定位、修改内存,达到自动破解的效果,这些脚本也是许多游戏外挂传播的主要方式。

GG修改器调用lua脚本实现作弊功能

GG修改器调用lua脚本实现作弊功能

由于进行内存修改需要提供root权限,GG修改器常运行虚拟机、虚拟框架等环境,在获取root权限后,可以使用magisk实现对游戏隐藏进程,来躲避游戏检测,让传统的检测手段失效,对抗难度大幅度提升。

GG修改器通过magisk实现对游戏隐藏进程

GG修改器通过magisk实现对游戏隐藏进程

◆ Cheat Engine修改器

Cheat Engine (简称CE) ,是一款功能强大的Windows游戏内存修改器。可以用来扫描游戏中的内存,并进行修改、锁定等操作。还附带了调试器、反汇编器、汇编器、变速器、系统检查工具等功能。

内存扫描是 Cheat Engine 最主要功能,通过反复搜索,对游戏内存进行定位,确认内存地址后,对其进行编辑、锁定等操作,从而制作外挂。

Cheat Engine 修改器扫描内存进行修改

Cheat Engine 修改器扫描内存进行修改

据观察 Cheat Engine 存在以下检测难点:

高维度作弊趋势显著:FairGuard发现,部分作弊用户使用 Cheat Engine 修改在 PC 模拟器中运行的移动端游戏,并制售其外挂。这种高维度的作弊会绕过传统的检测手段,加大检测排查难度。

PC端作弊情况复杂:相比于移动端,PC 端的权限更加开放,Cheat Engine 可以通过搭配其他工具对游戏进行调试分析并隐匿自己。

◆ iMemEditor修改器

iMemEditor (简称iME,原名为iGameGuardian,简称iGG) 是 iOS 平台常用的内存修改器,在iOS设备越狱环境下,可以实现精准/模糊指令搜索内存、内存锁定、浏览、编辑等功能。

打开游戏后,开启iMemEditor修改器,选择游戏目标进程;在修改器内,搜索想要修改的游戏数值,如上图中选择修改金币/钻石数量;通过搜索,反复定位金币/钻石数值模块,再编辑修改其数值,即可实现“无限金币/钻石”外挂效果。

iMemEditor修改器修改游戏过程

iMemEditor修改器修改游戏过程

通过修改器实现“无限金币/钻石”外挂效果

通过修改器实现“无限金币/钻石”外挂效果

同理,修改器还可以修改游戏内的角色攻击/生命值/防御力等各类内存模块,从而实现“倍攻挂”、“秒杀挂”、“无敌挂”等外挂效果。

针对游戏面临的内存修改问题,FairGuard定制了专门的应对策略,该方案已接入多款热门游戏并验证了出色的保护能力。

反内存修改

针对游戏面临的内存修改风险,FairGuard研发了行为检测方案,可对内存修改行为进行精准识别,通杀各类修改器外挂及其变种,做到有效防护。

安全环境检测

采用底层检测手段,精准识别游戏运行环境,如:越狱、ROOT、虚拟机、虚拟框架、云手机等,并提供个性化闪退策略。

Magisk专项检测

FairGuard独家检测方案,在 Magisk 所有隐藏选项全开的情况下,依旧可以精准识别并进行闪退等操作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/915911.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

git重置的四种类型(Git Reset)

git区域概念 1.工作区:IDEA中红色显示文件为工作区中的文件 (还未使用git add命令加入暂存区) 2.暂存区:IDEA中绿色(本次还未提交的新增的文件显示为绿色)或者蓝色(本次修改的之前版本提交的文件但本次还未提交的文件显示为蓝色)显示的文件为暂存区中的文件(使用了…

Clickhouse集群新建用户、授权以及remote权限问题

新建用户 create user if not exists user on cluster 集群名称 IDENTIFIED WITH plaintext_password BY 密码;给用户授查询、建表、删表的权限 GRANT create table,select,drop table ON 数据库实例.* TO user on cluster 集群名称 ;再其他节点下用户建本地表成功&#…

Exploring Defeasible Reasoning in Large Language Models: A Chain-of-Thought A

文章目录 题目摘要简介准备工作数据集生成方法实验结论 题目 探索大型语言模型中的可废止推理:思路链 论文地址:http://collegepublications.co.uk/downloads/LNGAI00004.pdf#page136 摘要 许多大型语言模型 (LLM) 经过大量高质量数据语料库的训练&…

应用程序部署(IIS的相关使用,sql server的相关使用)

数据服务程序(API)部署 1、修改配置文件 打开部署包中的web.config配置文件,确认数据库登录名和密码正确 修改ip为电脑IP(winR输入cmd,输入ipconfig,IPv4对应的就是本机IP) 2、打开IIS&#x…

RHCE-DNS域名解析服务器

一、DNS简介 DNS ( Domain Name System )是互联网上的一项服务,它作为将域名和 IP 地址相互映射的一个分布式 数据库,能够使人更方便的访问互联网。 DNS 系统使用的是网络的查询,那么自然需要有监听的 port 。 DNS 使…

插入排序(sort)C++

链接:登录—专业IT笔试面试备考平台_牛客网 来源:牛客网 时间限制:C/C/Rust/Pascal 1秒,其他语言2秒 空间限制:C/C/Rust/Pascal 512 M,其他语言1024 M 64bit IO Format: %lld 题目描述 插入排序是一种…

Vue2:脚手架 vue-cli

Vue2:脚手架 vue-cli 结构renderrefpropsmixinscoped 脚手架是Vue官方提供的Vue开发平台,.vue文件就需要通过脚手架来解析,所以对于单文件组件就依赖于脚手架。 安装: npm i -g vue/cli如果执行vue --version有输出,…

【MYSQL】主从复制机制(图解)

一、什么是主从复制 主从复制是一种通过binlog(二进制日志)进行操作的一直复制机制,它会有一个主数据库,还会有一个从数据库,根据binlog就可以把主数据库中的信息复制到从数据库之中。这个主从复制的好处就是如果在并发…

SpringCloud Gateway网关路由配置 接口统一 登录验证 权限校验 路由属性

介绍 Spring Cloud Gateway 根据请求的路径、HTTP 方法、头部等信息,将请求路由到对应的微服务实例。它支持基于动态路由规则的配置,可以根据请求的 URL、查询参数、请求头等条件,灵活地决定将请求转发到哪个微服务。Spring Cloud Gateway 提…

Java学习Day60:回家!(ElasticStatic)

1.what is ElasticStatic The Elastic Stack, 包括 Elasticsearch、 Kibana、 Beats 和 Logstash(也称为 ELK Stack)。能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。 Elaticsearch,简称…

《进制转换:数字世界的奇妙变身术》

思维导图 一、什么是进制转换 在当今数字化飞速发展的时代,数字如同构建整个数字宇宙的基本粒子,无处不在且发挥着至关重要的作用。而在这个数字的魔法世界里,进制就像是不同的语言规则,每种进制都有着独特的构建方式和逻辑。 我…

Unity3D高级编程

1、标签(Tag)和图层(Layer) 他们都用于游戏物体分类,但是侧重点不一样。 标签便于代码中对特定物体进行操作。 图层则服务于渲染和碰撞管理,如控制摄像机渲染、光源影响及碰撞设置。 标签和图层的位置: (1)标签Tag…

Jmeter基础篇(22)服务器性能监测工具Nmon的使用

一、前言 我们在日常做压测的过程中,不仅仅需要监控TPS,响应时间,报错率等这些系统基础性能数据,还需要对服务器的性能(如CPU、磁盘、内存、网络IO等)做监控,以求对系统运行过程中的硬件性能有…

IDEA最新最全设置教程(包括常用的插件)

一、目的 统一安装一些必要的插件,方便大家开发。统一代码格式、注释格式、统一字符集编码。新加入的同事可以快速适应和熟悉,不需要在讲解IDEA配置问题。二、IDEA要修改的设置 新项目设置和设置 1. Java编译版本 这里请使用自己的JDK 2. 统一IDEA字符集 统一使用UTF-8 无…

日本IT工作好找吗?

在日本做IT是否好找工作,实际上取决于多个因素,包括个人的技术能力、日语水平、工作经验以及市场需求等。以下是对这一问题的详细分析: 技术能力与日语水平 技术能力:IT行业是一个技术密集型行业,技术能力自然是求职…

多端校园圈子论坛小程序,多个学校同时代理,校园小程序分展示后台管理源码

社团活动与组织 信息发布:系统支持社团发布活动信息、招募新成员等,方便社团进行线上线下活动的组织和管理。 增强凝聚力:通过系统,社团成员可以更好地交流和互动,增强社团的凝聚力和影响力。 生活服务功能 二手市场…

用 Python 从零开始创建神经网络(六):优化(Optimization)介绍

优化(Optimization)介绍 引言 引言 在随机初始化的模型中,或者即使是采用更复杂方法初始化的模型中,我们的目标是随着时间的推移培训或教育一个模型。为了训练一个模型,我们调整权重和偏差以提高模型的准确性和置信度…

架构篇(04理解架构的演进)

目录 学习前言 一、架构演进 1. 初始阶段的网站架构 2. 应用服务和数据服务分离 3. 使用缓存改善网站性能 4. 使用应用服务器集群改善网站的并发处理能力 5. 数据库读写分离 6. 使用反向代理和CDN加上网站相应 7. 使用分布式文件系统和分布式数据库系统 8. 使用NoSQL和…

Linux软件包管理与Vim编辑器使用指南

目录 一、Linux软件包管理器yum 1.什么是软件包? 2.什么是软件包管理器? 3.查看软件包 4.安装软件 ​编辑 5.卸载软件 Linux开发工具: 二、Linux编辑器---vim 1.vim的基本概念 (1) 正常/普通模式(Normal mode&#xff0…

嵌入式硬件实战基础篇(一)-STM32+DAC0832 可调信号发生器-产生方波-三角波-正弦波

引言:本内容主要用作于学习巩固嵌入式硬件内容知识,用于想提升下述能力,针对学习STM32与DAC0832产生波形以及波形转换,对于硬件的降压和对于前面硬件篇的实际运用,针对仿真的使用,具体如下: 设…