看流星社区

 找回密码
 注册账号
查看: 3913|回复: 3

[汇编] 一个关于push ret HOOK的问题随记一下。

[复制链接]

该用户从未签到

发表于 2012-10-17 20:39:12 | 显示全部楼层 |阅读模式
在学习内核HOOK的问题,发现自已的基础就是XX,记录一下!

曾经的问题:

//加入pushad 及popad 这样会不会影响到JMP地址各个寄存器,
//因为以上代码和JMP到的地址代码为同一个函数。会吗?
//以上汇编代码处理后蓝屏,应该是堆栈不平问题。
问题:如何保证破坏后堆栈平衡?
  1. //正常   
  2. lkd> u ObCheckObjectAccess l10  
  3. nt!ObCheckObjectAccess:  
  4. 805c119c 8bff            mov     edi,edi  
  5. 805c119e 55              push    ebp  
  6. 805c119f 8bec            mov     ebp,esp  
  7. 805c11a1 83ec10          sub     esp,10h  
  8. 805c11a4 8b4508          mov     eax,dword ptr [ebp+8]  
  9. 805c11a7 56              push    esi  
  10. 805c11a8 57              push    edi  
  11. 805c11a9 ff7514          push    dword ptr [ebp+14h]  
  12. 805c11ac 8b78f0          mov     edi,dword ptr [eax-10h]  
  13. 805c11af 8d4df0          lea     ecx,[ebp-10h]  
  14. 805c11b2 51              push    ecx  
  15. 805c11b3 8d4dfc          lea     ecx,[ebp-4]  
  16. 805c11b6 33f6            xor     esi,esi  
  17. 805c11b8 51              push    ecx  
  18. 805c11b9 50              push    eax  
  19. 805c11ba 8975f4          mov     dword ptr [ebp-0Ch],esi  
  20.   
  21. //HOOK后   
  22. push    0AB248D18h       //我修改此地址进入我的函数后,直接JMP 805c11a9 以达到目地。   
  23. RET  
  24. in      al,dx  
  25. adc     byte ptr [ebx+57560845h],cl  
  26. 805c11a9 push    dword ptr [ebp+14h]  
  27. 805c11ac mov     edi,dword ptr [eax-10h]  
  28. 805c11af lea     ecx,[ebp-10h]  
  29. 805c11b2  push    ecx  
  30.   
  31.   
  32.   
  33. __declspec(naked) void myhook()  
  34. {  
  35. __asm  
  36. {  
  37. //模拟ObCheckObjectAccess函数头如下   
  38. pushad  
  39. mov     edi,edi  
  40. push    ebp  
  41. mov     ebp,esp  
  42. sub     esp,10h  
  43. mov     eax,dword ptr [ebp+8]  
  44. push    esi  
  45. push    edi  
  46. popad  
  47. //跳转到JMP 805c11a9   
  48. mov ebx,ObCheckObjectAccess  
  49.        add ebx,0xd  
  50. jmp ebx  
  51.          
  52.      }  
  53. }  
复制代码

该用户从未签到

发表于 2013-5-27 12:53:25 | 显示全部楼层
顶顶顶顶顶顶顶顶顶顶

该用户从未签到

发表于 2019-1-9 07:46:56 | 显示全部楼层
666666666666666666

该用户从未签到

发表于 2019-4-14 13:50:02 | 显示全部楼层
谢谢分分享,666666666666
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-19 00:35

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表