twtzw
驱动牛犊
驱动牛犊
  • 注册日期2008-10-21
  • 最后登录2008-11-26
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望25点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1719回复:5

关于EPROCESS 偏移的疑问,请高手帮忙解决

楼主#
更多 发布于:2008-10-21 11:23
在windows 2003
我用System 自动获取偏移量的方法,拿到的UniqueProcessId的偏移量是37

而用windbg导出的UniqueProcessId的偏移量 +0x094

而从目前的使用上来看,37才是正确的,请教高手,这是为什么

难道windbg导出是错的???????
WQXNETQIQI
驱动大牛
驱动大牛
  • 注册日期2006-06-12
  • 最后登录2010-10-26
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望1076点
  • 贡献值0点
  • 好评度895点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2008-10-21 12:08
0X94是对的,eprocess前面还有kprocess结构,不可能只有37这么少
驱动开发者 呵呵
twtzw
驱动牛犊
驱动牛犊
  • 注册日期2008-10-21
  • 最后登录2008-11-26
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望25点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-10-21 13:48
可是我在DDK中用37才是对的,0X94拿不到
PEPROCESS peCurProc;
ULONG TerminateProcessID;
peCurProc = PsGetCurrentProcess();
TerminateProcessID=*((ULONG *)peCurProc+37);
上面拿到的ID是正确的,才用0X94拿的话就拿到错误的
twtzw
驱动牛犊
驱动牛犊
  • 注册日期2008-10-21
  • 最后登录2008-11-26
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望25点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-10-23 10:27
请高手帮忙解决
violin
驱动牛犊
驱动牛犊
  • 注册日期2003-10-02
  • 最后登录2009-08-22
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望83点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-10-23 12:52
引用第2楼twtzw于2008-10-21 13:48发表的  :
可是我在DDK中用37才是对的,0X94拿不到
PEPROCESS peCurProc;
ULONG TerminateProcessID;
peCurProc = PsGetCurrentProcess();
TerminateProcessID=*((ULONG *)peCurProc+37);
.......


......

37 * sizeof(ULONG) == 0x94
twtzw
驱动牛犊
驱动牛犊
  • 注册日期2008-10-21
  • 最后登录2008-11-26
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望25点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2008-10-24 09:19
谢谢,正是这样解决
游客

返回顶部