修改进程内存

内存:

内存相信你们都知道吧,任何程序都运行在内存,所以也给某些人有可乘之机,在这个外挂泛滥的时代,我们可以了解一下外挂的制作方法。

内存概述:

计算机原理和系统原理,学的好,那么外挂对你来说还是相对简单的,如果不懂没关系,我们主要了解三个部分:
第一个部分是汇编部分
第二个是内存原理部分
第三个是程序运行部分

C语言:

写外挂,现在是主要两个语言来写,第一个易语言,第二个是C语言,我个人比较喜欢用C语言,当然外挂,主要是windows平台,所以我们用的是VC,不是纯正的c语言。

windows库:

外挂主要是内存外挂,按键外挂,网络封包外挂,主要是三类吧,我们今天讲内存外挂里面使用那些的windows的api,api又是啥?其实就是一个函数,但是这个函数是windows自带的。

函数的使用:

内存外挂,有好几种方式,修改,截取,hook,我们先说第一种修改,首先游戏载入内存之后,里面的变量也同时载入内存,变量变成了一个内存地址,这个内存地址就相对应的保存了这个变量的值,所以我们就需要去内存中寻找这个值,那怎么寻找呢,
第一种方法用注入方式,把一个DLL注入进去,然后遍历地址,找出那个需要修改的值,怎么找呢,很简单,用循环遍历地址,内存地址格式和DLL注入方式,找到之后就改成你想要改的值。
第二种用函数,windows自带的函数,简称API,先用第一个函数openProcess打开你要修改的游戏进程,再用第二个函数readProcessMemory这个函数听名字就知道去读取进程内存,然后遍历把进程内存的内容全部读出来,然后再用writeProcessMemory听名字也知道这是个修改内存的函数,再去把相对应的进程内存修改一下。
以上两种是查找进程内存的内容方法,还有一个要注意的地方就是,内存的解析,要知道,如果解析的方式不对,得到的结果是不同的,解析又是什么呢,就是变量类型,该按什么类型去读取修改内存,这是一个需要注意的地方,变量类型就是这几种吧,short,int,float,double,long,char,当然还有一个bool_类型,新增的。
还有就是钩子,什么是钩子,进程被载入内存,也同时把函数给载入内存了,再某种情况下,我们去调用游戏里面的函数,是一个挺不错的修改方法,有些游戏函数是校验值的,或者驱动保护这个东西,这些难不倒你们啦。
以上的所有用于修改进程和读取进程的API都在windows.h这个头文件下。
在内存中,函数是没有名字就一个地址,叫函数的入口地址。
更多细节请自行谷歌,这次博文到此为止,下篇关于内存的博文,将会把内存讲细一点,还有基址的计算,内存四区,这一篇关于内存的博文,我只介绍内存而已。

发表新评论