Process Hollowing在64位进程中的简单实现

首先,创建一个挂起状态的合法进程(比如notepad进程),然后再使用ZwUnmapViewOfSectionNtUnmapViewOfSection将合法的notepad模块占据的内存空间给unmap掉。接下来,向notepad的内存空间中写入恶意的PE文件,并通过修改进程的context,将入口点改为恶意PE文件的入口点。最后,使用ResumeThread使notepad恢复执行,从而达到在notepad进程空间中运行恶意PE文件的效果。这种方法就是Process Hollowing。

本文大量参考Leitch, J. (n.d.). Process Hollowing.这篇文章。

阅读更多