-
-
[求助]新手求助一个hokk recv 的问题
-
发表于:
2017-5-24 23:16
2684
-
int WINAPI recvProxy(SOCKET s, char FAR* buf, int len, int flags)
{
AfxUnHookCode((void*)addr, OldProc, 5); //恢复
int hs= recv(s, buf, len, flags);//原地址发送
AfxHookCode((void*)addr, (void*)myaddr, (void**)&OldProc, 5);挂钩
if(hs>1)//判断发送的字节数
{
HANDLE m_hMapFile =OpenFileMapping(FILE_MAP_WRITE, FALSE, "shareMemory"); //共享内存
if(m_hMapFile!=0)
{
void *m_pBaseMapFile=MapViewOfFile(m_hMapFile,FILE_MAP_READ|FILE_MAP_WRITE,0,0,0); 共享内存地址
memcpy(m_pBaseMapFile,buf,hs);//把数据复制到共享内存中!!!!!!(获得的数据不正确)
UnmapViewOfFile(m_pBaseMapFile)//;取消映射
}
return hs;
}
上面是我hook recv函数的代码。
现在有个问题,为什么我在共享内存中获得的数据不正确。
有大神帮我看下问题出在哪里吗?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)