获取所有进程的映像路径以及命令行参数。
具体实现步骤如下:
1、通过 GetProcAddress 取得 GetCommandLineA 的地址。
2、用 CreateRemoteThread 启动远程线程,使远程进程执行 GetCommandLineA 。
3、用 WaitForSingleObject 等待远程线程结束。
4、用 GetExitCodeThread 取得远程线程退出代码,其实就是远程进程中 GetCommandLineA 函数的返回值,这是远程进程命令行的首地址。
5、通过 GetProcAddress 取得 lstrlenA 的地址。
6、用 CreateRemoteThread 启动远程线程,使远程进程执行 lstrlenA 。
7、用 WaitForSingleObject 等待远程线程结束。
8、用 GetExitCodeThread 取得远程线程退出代码,其实就是远程进程中 lstrlenA 函数的返回值,这是远程进程命令行的文本长度。
9、使用 ReadProcessMemory 把远程进程的命令行读取出来。