2581559949 发表于 2017-11-9 16:36

C++ 的 hook后,代码怎么写才能得到上面ecx的数据? 请进有图

本帖最后由 2581559949 于 2017-11-9 16:44 编辑

已经把dll注入进exe进程,hook 指定地址,跳进我的代码段后,C++代码怎么写才能得到这里的数据
被hook的exe C++代码原型
char * pData;
DWORD * wpMsgID = (DWORD *)(pData );



下面是OD呈现的




Jmp 跳进我的DLL代码后, ;C++代码怎么写才能得到(pData ) 里的数据,并且要转换为* DWORD

youxiaxy 发表于 2017-11-9 16:36

2581559949 发表于 2017-11-9 19:44
谢谢大牛,果然大神。小弟比较欠缺汇编方面的知识,请推荐几个视频教程,或者这方面的知识,我最近看郁金 ...

大概就是 这样子。不确定 100%正确

VOID WINAPI ShowVal(DWORD a)
{
//得到a 的 值 ,随意处理吧
return ;
}

__declspec(naked) VOID WINAPI HookFun()
{

__asm
{
mov eax,dword ptr ss:               我hook的这里跳进的我的代码
mov ecx,dword ptr ds:
push ecx
call ShowVal
ret
}

}

Azahod 发表于 2017-11-9 17:58

如果你要修改栈低的话
_asm
{
mov dword ptr ss:,0
}

暴爆 发表于 2017-11-9 17:59

push

然后你dll函数的第一个参数就是了

一个good而已 发表于 2017-11-9 18:47

没看懂 你想怎么操作 你a地址为0肯定要崩溃呀

2581559949 发表于 2017-11-9 19:05

Azahod 发表于 2017-11-9 17:58
如果你要修改栈低的话
_asm
{


谢谢,我不要修改,
我要把这个pData的数据提取到我的变量里
请问怎么做?

2581559949 发表于 2017-11-9 19:06

暴爆 发表于 2017-11-9 17:59
push

然后你dll函数的第一个参数就是了

请给出具体代码
我要把pData 转换成Dword *然后提取到Dword * a这个变量里

youxiaxy 发表于 2017-11-9 19:08

写个裸函数。直接 抄 原始 汇编代码就行。不需要 修改。示例操作 图片




源代码:




youxiaxy 发表于 2017-11-9 19:17

补充:   若 要得到 指针 所指的 值就写成 指针

得到 结果

HOOK Get Val=1819043144
test,4354252,Hello World,jelloc


1819043144   =0x6C6C6548


0x6C6C6548   其实就是ANSI的lloH         就是 Hello   前四字节只不过是 内存 存储顺序 成了反的


2581559949 发表于 2017-11-9 19:44

本帖最后由 2581559949 于 2017-11-9 19:46 编辑

youxiaxy 发表于 2017-11-9 19:17
补充:   若 要得到 指针 所指的 值就写成 指针

得到 结果

谢谢大牛,果然大神。小弟比较欠缺汇编方面的知识,请推荐几个视频教程,或者这方面的知识,我最近看郁金香的教程,讲的hook很少
另外在请教下。EXE里的源代码是
DWORD *dsWord;
char * pData ; 是组好的数据包,里面的前4位数据内容是 0x3DDDDD
dsWord = (DWORD *)pData;
OD里显示是
mov eax,dword ptr ss:               我hook的这里跳进的我的代码
mov ecx,dword ptr ds:
90FBFFFF mov dword ptr ss:,ecx
我想把0x3DDDDD 提取到我的变量a里面,请问该怎么写是这样吗?
DWORD a=0;
DWORD d=0;
DWORD c=0;
_asm
{
mov eax,a
mov ebx,d
mov eax,dword ptr ss:               我hook的这里跳进的我的代码
mov ebx,dword ptr ds:
mov dword ptr ss:,ebx
}
最后显示出来,可是这个代码崩溃了,原因是什么?


页: [1] 2
查看完整版本: C++ 的 hook后,代码怎么写才能得到上面ecx的数据? 请进有图