请教一个关于 API 不能正确 Hook 的问题。 ( 积分: 100 )

  • 主题发起人 主题发起人 yanghaijun
  • 开始时间 开始时间
我在 XP 下测试通不过
 
针对性是指,引入表式的hook有局限性,即不能hook采用GetProcAddress调用的函数。为了克服这一缺陷,只能在目标程序调用GetProcAddress前hook函数所在dll的导出表。所以使用了CreateProcess 建立1个suspend的进程,然后FixExportTable,FixImportTable,然后在Resume。<br>这是引入表式的hook局限性造成的,暂时想不出什么好的解决办法。<br>上面的程序能够在大多数程序(包括许多种壳)上顺利运行。我这里没有xp,2k+sp4下测试没问题。如果没有管理员权限或你的是xp+sp2并且开了DEP有都可能会造成运行不成功。<br>自己调试看看是哪里出错吧。<br>另外,引入表式的hook局限性太强,有时间写一个陷阱式的,兼容性应该能有很大提高。虽然不可能对所有程序都一定有效。
 
后退
顶部