我正在尝试用C++将一些ASM代码注入到Win32程序中。有没有一种方法可以避免DLL注入?
例如,这一点:
__asm{}仅适用于当前程序。有没有类似的东西可以用来生成十六进制代码,我可以用WriteProcessMemory注入?
提前感谢!
发布于 2011-02-21 16:42:26
在MSVC中,它可能如下所示:
void* shellcodeStart;
void* shellcodeEnd;
__asm {
mov shellcodeStart, offset shellcode_start
mov shellcodeEnd, offset shellcode_end
jmp shellcode_end
shellcode_start:
... // your code
shellcode_end:
}
size_t cb = shellcodeEnd - shellcodeStart;
WriteProcessMemory(hProcess, remoteAddress, shellcodeStart, cb, NULL);发布于 2011-02-21 16:40:40
一种技术是手工汇编代码并将其放入数组中,然后将代码复制到应该放到的位置。但这是偏离了我不太了解的黑客领域。
https://stackoverflow.com/questions/5063577
复制相似问题