用线程注入注入代码洞穴¶
向另一个进程注入代码的第一步,是以字节数组的形式编写与位置无关的汇编代码,称为shellcode。你可以把 shellcode 写入远程进程,形成代码洞穴,它充当你想让游戏执行的新线程的入口点。代码洞穴创建后,你可以用线程注入或线程劫持执行它。我将在本节展示线程注入的示例,并在第一百三十八页「劫持游戏主线程以执行代码洞穴」中说明线程劫持。
你会在本书资源文件的 GameHackingExamples/Chapter7_C odeInjection 目录中找到本章的示例代码。打开 main-codeInjection.cpp,跟着我解释如何构建该文件中 injectCodeUsingThreadInjection() 函数的简化版本。