CS 1.6 hack
我们的选题是对过气游戏CS1.6 (Esai 3248版)进行外挂的编写,主要涉及到利用反汇编、注入dll等技术进行游戏的修改。
DLL注入
我知道,每个dll文件里都有一个dllMain的入口,可以在那里设置当dll被process/thread进行attath/deattach等操作时执行的操作。那么我们编写我们的外挂代码,然后将其注入进cstrike.exe中就可以实现许多作弊功能了。
至于具体的注入方式,我们采取了远程创建线程注入的方式。具体的过程和解释如下
- 先获取注入目标的进程句柄,可以通过进程名、pid等方式获得
- 给注入目标开辟一块内存空间存储dll的路径,然后远程写入
- 获得加载dll的函数LoadLibraryW的地址,由于所有win32进程都加在了kernel.dll,因此该函数在所有进程的内存位置都是一样的,这为我们提供了方便
- 创建在注入目标里远程线程,执行LoadLibraryW,参数自然就是之前写入诸如目标内存空间的dll路径名如果有学习C++的同学,可以加入小编群:825414254获取学习资料与听课权限
至此,dll已经被成功注入,并执行了相关的操作。在这里我们执行的就是下面介绍的hook操作
Hook opengl 函数实现透视、反烟雾、闪光
我们知道,cs1.6有openg