“黑客”入门学习之“单机游戏外挂原理与实现”

“黑客”入门学习之“单机游戏外挂原理与实现”(文末全套黑客资料+教程)

昨天给小伙伴们分享了一篇"游戏外挂原理与实现"的文章,小伙伴们很热情,反响很好,好多朋友私信我,或者直接回复我"写的是不错,但是还是一头雾水,作者可不可以先教简单的单机游戏外挂制作过程啊?"。

img

今天就以本篇文章分享一下单机游戏外挂原理与实现?

单机版游戏外挂可以简称为游戏修改器单机游戏修改器的原理主要是通过修改游戏程序的内存数据或存盘文件来修改游戏中的相关数据,使之达到"无敌"的效果。单机游戏外挂主要功能可以分为三类:模拟键盘操作、模拟鼠标操作、修改内存数据。这三个功能最难实现的是修改内存数据。

那么好,我们进入正题,开启游戏外挂制作流程的讲解:想修改内存数据我们首先就要找到游戏进程,然后找到游戏窗口的句柄,最后找到存储变量的内存地址,这时候再通过编程工具编译制作出一款游戏修改器,就可以实现游戏作弊喽。

点此免费领取:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》

一、 先熟悉几个技术基本概念:

1、 进程:每一个应用程序/游戏启动,都会产生至少一个进程Process,在任务管理器里可以看到进程名称和进程PID。

img

2、 句柄:英文HANDLE,一个整数值。数据的地址需要变动,变动以后就需要有人来记录管理变动,就好像户籍管理一样,因此系统用句柄来记载数据地址的变更。肉眼看到的一个个文件夹,窗口,按钮,图标,应用程序能够通过句柄访问相应的对象的信息

3、 数据类型:游戏中的血量、蓝、生命值,我们将他们称之为变量,变量包含了变量名称和数据类型,那么它的名字就是"血量、生命值"等等,而它的数据类型决定了数值以何种方式存储到计算机的内存中,想要找到自身需要的变量,如果可以确定这个变量的数据类型或者有根据的推测来缩小变量的数据类型范围,那么对于快速定位该变量是具有帮助性的。以下是几种常见的变量类型:

整数型:游戏中比如血量、法力可能用到这种类型。

字节型:根据不同的编辑器,1个整形占用N个字节(N>1),一般很早之前出产的GBA游戏为了节省开销会用到这种类型。

浮点型:带有小数点的数字,如果金币或者伤害值带有小数点,那很可能是这种数据类型保存的。

文本型:比如世界喊话,人物命名,一般采用文本型保存这类数据。

4、 **钩子:**钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程序以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。

二、熟悉基本流程

  1. 找到游戏进程

  2. 然后找到游戏窗口的句柄

  3. 找到存储变量的内存地址

  4. 利用编程语言建立工具修改变量的数值

针对以上流程我们该如何操作实现呢?

高手可以利用编程语言,如C#、C++、汇编等编程语言制作脚本程序进行获取,对于初级入门选手可以选择另外一种简单的方式,使用开源的工具去完成内存数据的修改。好的,那么今天我们就教大家一款很好用的游戏外挂制作工具**“Cheat Engine”。**

如果你想要入门黑客,笔者给大家准备了一份:282G全网最全的黑客资料包免费领取!
赶紧扫一扫下面二维码领取吧。


三、 学会利用"Cheat Engine"工具读取和修改游戏内存数据

1、简介

作弊引擎(Cheat Engine)是一个开源工具,旨在帮助玩家修改在窗口下运行的单人游戏,以便可以根据自己的喜好使其更难或更容易(,还包含其他有用的工具来帮助调试游戏甚至普通应用程序,并帮助您通过后门程序检查内存修改来保护您的系统,甚至包含一些方法可以从常规方法中取消隐藏。

它配有内存扫描器,可以快速扫描游戏中使用的变量,并允许您更改它们,但它还具有调试器,反汇编器,汇编器,speedhack,培训师制造商,直接3D操纵工具,系统检测工具等。除了这些工具,它还提供了广泛的脚本支持,这将有助于经验丰富的开发人员轻松创建自己的应用程序,并与其他人分享。

Cheat Engine是我见过的比较优秀的游戏作弊工具。它的优点多不胜数,虽然单独从搜索游戏里面的数值来说,它并不比其他同类软件强多少,但它不仅仅是个游戏修改工具,它还有其他游戏修改软件所没有的一些特点,例如:它有强大的反汇编功能,这个是别的游戏工具中几乎没有的;还有,它本身就自带了外挂制作工具,可以直接由它生成外挂。而它的界面非常简洁朴素,这也是我喜欢它的原因之一。

2、举例来阐述CE获取游戏内存数据地址的过程

2.1利用CE工具获取"魂斗罗单机游戏"内存数据地址

**步骤一:**先打开游戏用CE来查找游戏中 1号键中武器的子弹数基址由于这是单机游戏, 游戏中的基址不会改变, 如果是网络游戏, 基址会随着游戏的更新而改变.

如下图大家所见, 1号键中的武器子弹数为; 100

img

步骤二

打开CE, 如下图:

img
我们再附加游戏进程.

img

点击 OPEN

**步骤三:**附加游戏进程之后我们在数值这里添写 子弹数 100 再点 首次扫描

img

img

这里找到了749个结果, 这么多结果, 我们也不确定哪个才是真正的子弹数地址, 那们步骤四:我们就进入到游戏里面, 开几枪.好的, 现在剩下 86个子弹, 那么我们就在 CE中输入86, 点击 再次扫描

img

最后得到两个地址, 经过修改这两个地址的数值, 我们得到了第二个是正确的.00506d20

img

现在子弹数被锁定为了 830

img

大概获取内存地址的思路都是这样的。

3、利用CE工具修改"魔兽争霸"游戏数据的过程(简单修改个攻击力值)

具体步骤如下:

步骤一

先运行魔兽进入游戏

步骤二

打开

img
img

然后点击左上角电脑图标:选则war3。打开

img

步骤三:开始修改攻击下图为装备武器后数据(绿色字体为武器加攻击量)

img

在CE中输入11首次扫描

img

扫描后左边对话框出现许多11

img

步奏四:

卸下武器

img

在HEX中输入0(点击再次扫描)出现以下图片

img

依旧有许多数值。

接下来在船上武器输入11.如此反复知道数值变少

img

这种情况这些地址都可能是攻击。选取第一个

img

点击红色箭头

img

双击下面的值(11)

img

下面就可以输入自己满意的数值。比如1000

回到游戏发现攻击力已被更改为1000。

img

四、 学会自制一款单机游戏外挂

制作过程一定需要编程基础了,但是这里也有简单的编程工具,例如**“易语言”,“易语言”**是一门以中文作为程序代码语言,易语言的诞生极大的降低了编程的门槛和学习的难度。所以小伙伴们可以考虑利用这款工具做一款单机游戏修改器。

下面仍然通过"魂斗罗单机游戏"为例子阐述一下"易语言"编程外挂的逻辑。

上面我们找出了游戏中人物当前血的地址以及1号子弹数的地址.现在就通过"易语言"编写代码实现人物血的读取和修改子弹数.

具体步骤如下:

1、打开易语言, 首先申明两个变量,窗口句柄 和 进程ID 都是整数型的, 如下图:

img

上图中, 是通过游戏的进程名ext.exe 以及它的标题 “eXtinction” 来取得它的窗体句柄的。取得句柄后, 下一句我们判断窗口句柄是否有效, 之后通过窗口句柄取得进程ID。需要注意的是如果游戏没有打开, 窗口句柄将是负数, 所以要判断窗口句柄是否大于0.

2、在易语言窗口中布置好, 如下图:

img

3、然后再双击读取人物血, 现在我们开始写代码。

img

上图中, 定义了一个变量;人物血地址 整数型的。接下读内存整数型十六到十, 就是将十六进制转换成十进制。上图中两条语句的意思是:读内存整数型, 把读出的值传给了人物血地址然后就是在编辑框中显示读取出来的人物血值.

4、 修改子弹数这次需要用到的命令是写内存整数型。

img

就是把编辑框1里面的数字写入到 00506d84这个地址里.5、最后我们还需要添加一个时钟, 让时钟每隔100秒执行下面这条语句.写内存整数型 (进程 ID, 十六到十 (" 00506d84" ), 到整数 (编辑框1.内容))这样, 就可以把子弹数锁定了。

从靠劳力赚钱转变成靠脑力赚钱,想入门黑客的小白肯定想知道如何学好?

点此免费领取:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》

一、网安学习成长路线图

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、网安视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

三、精品网安学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述

四、网络安全源码合集+工具包

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块
在这里插入图片描述在这里插入图片描述
这份完整版的学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

PMP P-03 Scope Management

范围管理:要做多少事情,内容

数据生成 | MATLAB实现GAN生成对抗网络结合SVM支持向量机的数据生成

数据生成 | MATLAB实现GAN生成对抗网络结合SVM支持向量机的数据生成 目录 数据生成 | MATLAB实现GAN生成对抗网络结合SVM支持向量机的数据生成生成效果基本描述程序设计参考资料 生成效果 基本描述 数据生成 | MATLAB实现GAN生成对抗网络结合SVM支持向量机的数据生成。 生成对抗…

代码随想录算法训练营第四十七天|LeetCode 382,115

目录 LeetCode 392.判断子序列 动态规划五步曲: 1.确定dp[i][j]的含义 2.找出递推公式 3.初始化dp数组 4.确定遍历顺序 5.打印dp数组 LeetCode 115.不同的子序列 动态规划五步曲: 1.确定dp[i][j]的含义 2.找出递推公式 3.初始化dp数组 4.确定遍历顺序 …

压缩包密码的破解

给压缩包添加密码 解密 将压缩包的加密信息放入新建的文本文档 zip2john 123.zip > mima.txt 使用john解密 john mima.txt john的密码字典路径 cd /etc/share/john ls 查看有多少行密码

压缩包解压密码怎么破

从网上下载的资源大多数都是以压缩包形式被下载下来,我们需要通过解压压缩包拿到我们想要的文件,但是有时候可能会遇到解压压缩包的时候需要密码的情况,那压缩包解压秘密该怎么破解呢?如果文件资源对你来说很重要的话,…

Linux系统:CentOS 7 CA证书服务器部署

目录 一、理论 1.CA认证中心 2.CA证书服务器部署 二、实验 1. CA证书服务器部署 一、理论 1.CA认证中心 (1)概念 CA :CertificateAuthority的缩写,通常翻译成认证权威或者认证中心,主要用途是为用户发放数字证…

D - President - 背包dp

分析: 需要让所有x大于y的对应的z的总数大于z总共的数量的一半,找最小需要转化的数量,那么可以转化为01背包问题,z作为体积,每组的x和y都可以计算出一个值表示需不需要转化,作为背包价值,如果x大…

利用阿里云服务器公网IP+FRP搭建内网穿透

1 必要条件: 一台公网IP服务器,这里采用阿里云ECS服务器。 此处将IP定义为:serverA-IP 2 服务器下载代码: # mkdir /data # cd /data # git clone https://github.com/fatedier/frp.git # cd frp3 编译代码 编译需要时间 # make go fmt .…

计算机组成原理学习笔记-精简复习版

一、计算机系统概述 计算机系统硬件软件 计算机硬件的发展: 第一代计算机:(使用电子管)第二代计算机:(使用晶体管)第三代计算机:(使用较小规模的集成电路)第四代计算机:(使用较大规模的集成电路) 冯诺依曼体系结构…

FLASH 停止后 IE无法使用

WINDOWS8 WINDOWS10系统下的IE10或者IE11出现 解决方法:打开https://www.flash.cn/

win10 家庭版无法使用IE浏览器

升级window10(家庭版之后)之后打开IE浏览器,打开照片都提示无法使用内置管理员账户打开,网上查看说打开secpol.msc,提示系统不存在该文件,经过一波周折之后,发现了一个快速解决的方案&#xff0…

单片机基础知识 06 (中断-2)

一. 定时器中断概念 51单片机的内部有两个16位可编程的定时器/计数器,即定时器T0和定时器T1。 52单片机内部多一个T2定时器/计数器。 定时器/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。 TMOD是定时器/计数器…

八大排序算法 (python版本)

八大排序算法 个人学习笔记 如有问题欢迎指正交流快速排序经常考, 如果只掌握一个排序算法的话,首选快速排序算法 八大排序算法通常指的是以下八种经典排序算法: 1. 冒泡排序 (Bubble Sort) 使用场景:适用于小规模数据的排序&a…

Ubuntu 3D桌面

转自http://forum.ubuntu.org.cn/viewtopic.php?f94&t140531 [2010年8月17日更新] Ubuntu Linux 3D桌面完全教程,显卡驱动安装方法,compiz特效介绍,常见问题解答。 本教程的前身是一善鱼编写并发布在Ubuntu中文论坛forum.ubuntu.org.cn3…

xendesktop更新计算机,XenDesktop7.12发布Win10周年更新版桌面

在上一篇XenCenter配置的资源池的基础上,本篇将使用该资源池作为基础环境搭建XenDesktop7.12发布Win10周年更新版桌面,XenDesktop7.12是上个月(2016年12月)才发布的版本,是目前最新版。本篇的主要内容包括:XenDesktop7.12安装、创…

2020网吧无盘服务器配置,云更新 2020.5.15.14195_x64 | 专业网吧维护

重点功能: 1.增强软件安全性 2.优化无盘启动,支持BIOS、UEFI、通用镜像自动适配 3.增加镜像转换工具,支持将BIOS或UEFI镜像转换为通用镜像 4.增加显卡纹理质量和低延迟模式的设置 其他更新: 5.优化显示器信息采集功能 6.优化控制台…

BM80 买卖股票的最好时机(一)

目录 1.题目描述 2.题目分析 3.编写代码 4.总结 这是牛客网上的一道题目 1.题目描述 题目链接:买卖股票的最好时机(一)_牛客题霸_牛客网 (nowcoder.com) 2.题目分析 我们看到这个题目中一个数组表示每一天的股价,那么最大利润怎么算呢&#xff0c…

MFC界面库

好东西,果断收藏 刚开始用C做界面的时候,根本不知道怎么用简陋的MFC控件做出比较美观的界面,后来就开始逐渐接触到BCG Xtreme ToolkitPro v15.0.1,Skin,等界面库,以及一些网友自己写的界面库,开始对于C软件…

android开源库合集

android开源库合集 1、阿里巴巴开源的自定义viewpager,支持多重动画,横向纵向,多页面显示 项目地址:https://github.com/alibaba/UltraViewPager 2、android版本更新功能。使用retrfit2 rxjava2 okhttp3实现多文件多线程下载&am…

10个前端动画库让你的交互更加炫酷

Animate.css animate.css 是一个使用CSS3的animation制作的动画效果的CSS集合,里面预设了很多种常用的动画,且使用非常简单。 GitHub:github.com/animate-css… Hover.css Hover.css 是一套基于 CSS3 的鼠标悬停效果和动画,这些可以非常轻松的被应用到按钮、LOGO 以及图…