C游戏外挂

C游戏外挂(dll注入)笔记(持续学习更新ing)

先说说我对于外挂的理解,所谓外挂,也就是辅助程序,我这里想说的外挂区别于模拟鼠标键盘操作(调用os或硬件层的底层function),是以别人写的视频游戏或软件作为平台,调用别人写好的函数,修改别人的软件数据以达到某些目的的程序。
但是就像是你去别人的房子,房子主人毕竟不喜欢你随便操作他的私有物,所以你不可能是直挺挺的以一个外人的身份去操作他的房间,你只能“变身”,变身成他房间的一个内人,既然是自家人也就没什么好说了,你想干嘛干嘛。这也就是说,你写的这个程序不能是一个独立程序,只能屈身做一个附属模块去依附别人的程序。
这里就说说这个如何去依附别人的程序

先说环境:

  • VS(这个就不用说了吧)

  • 模块注入工具:链接:https://pan.baidu.com/s/1seBL9CGjp6Ug24g_-sD31Q
    提取码:4o3t

这些环弄好了我们看看代码框架 有别于一般程序 我们加入 __declspec(dllexport)
此处注意一定要建立一个c文件

这里补充说明一下刚刚说到的程序,程序其实是一种静态的说法,我们说外挂自然要说到一个动态的的概念——进程,进程是计算机分配给程序的资源调度的单位,我们的程序作为模块附属其它的程序自然也就共享了这些资源。这里我们要去调用这些资源(内存数据,cpu操作权等)。在我们的外挂程序中如何去调用别人的函数或者去修改别人的数据呢r> 通过——函数指针概念,或者指针去访问相应的数据块从而调用数据。

我们在程序里面先做一件事就是去设置当前程序为dll而非exe

C游戏外挂

我们需要将指针转换为待使用的函数类型,但是作为一款外挂我们当然不知道它有哪些函数,函数的参数如何,数据地址是什么我们需要借助另一类工具——IDA PRO,ollydbg,softice通过反汇编以及跟踪调试工具
去得到相关的数据。


声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月7日
下一篇 2019年1月7日

相关推荐