주신 코드로 하는데 요건 자신의 프로세스의 PE만 가져와버리는데..
EnumProcessModule로 가져온 DLL들의 PE를 어떻게 가져와야해여?
주신 소스 DLL로 만들어서 그때그떄마다 LoadLibrary해서 올려야해여?
주신 코드로 하는데 요건 자신의 프로세스의 PE만 가져와버리는데..
EnumProcessModule로 가져온 DLL들의 PE를 어떻게 가져와야해여?
주신 소스 DLL로 만들어서 그때그떄마다 LoadLibrary해서 올려야해여?
DLL로 만들어서 인젝션하든지, ReadProcessMemory로 메모리를 읽어오세요~
가장 단순무식하게 하자면 내 프로세스에서 int value = *(int *)something 했던 걸 int value; DWORD dwRead; ReadProcessMemory(hProcess, (LPVOID)something, sizeof(int), &dwRead;); 식으로 고치면 되죠~
아 ReadProcessMemory(hProcess, (LPVOID)something, &value;, sizeof(int), &dwRead; ); ㅎㅎ
또 다른 방법은, 로딩된 DLL은 실제론 파일 매핑이기 때문에,
ZwQuerySection 함수를 이용해서 원하는 dll을 내 프로세스 메모리로 똑같이 매핑하는 것도 가능할 듯.
한편 구현해 봐야지~~
구현하고 제가 질문전까지 공개 ㄴㄴ 해주세여 ㅋㅋㅋㅋㅋㅋㅋ
ZwQuerySection 말하는 거임~~
이건 나도 이론적으로만 확신할 뿐 실제로 구현해 본 적이 없으니 한번 실험삼아 해보는 거.