lghtly
驱动牛犊
驱动牛犊
  • 注册日期2004-10-14
  • 最后登录2005-11-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1221回复:4

有关进程控制的若于问题,热烈欢迎大家讨论

楼主#
更多 发布于:2005-01-06 16:37
1 由一个进程的句柄能够得到进程的那些信息,如何获得,使用那些函数?线程的又如何?
2 系统服务表和ntoskrnl.exe的输出函数表之间的关系是什么?通常的挂钩方法是挂前者,挂后者的结果是什么?两者有什么联系?
3 寻inside windows 2k 的光盘。
4 在驱动中由一个进程的ID,如何进一步得到其它信息?由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息,为什么?PEB 是动态变化的吗?是多个进程使用一个,谁运行谁使用吗?还是各自有一个?比如说由一个ID号,如何得到其进程参数信息,所在目录等。

最新喜欢:

ljmmaryljmmar...
fslife
驱动大牛
驱动大牛
  • 注册日期2004-06-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望49点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-01-06 17:10
关注、学习中 。。。



个人认为,只要得到进程的ID,且进程没有结束,那就可以得到进程的所有信息,就看你需要什么信息了。

[编辑 -  1/6/05 by  fslife]
在交流中学习。。。
lghtly
驱动牛犊
驱动牛犊
  • 注册日期2004-10-14
  • 最后登录2005-11-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-01-07 09:30
由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,


可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息,为什么?PEB 是动态变化的吗?是多个进程使用一个,谁运行谁使用吗?



还是各自有一个?比如说由一个ID号,如何得到其进程参数信息,所在目录等。
lghtly
驱动牛犊
驱动牛犊
  • 注册日期2004-10-14
  • 最后登录2005-11-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-01-07 09:31
由一个ID号,如何得到其进程参数信息,所在目录等。

bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-01-07 09:57
在内核中可以用ObReferenceObjectByHandle将句柄转换为指向对象体的指针,该处便为进程控制块。线程为线程控制块TEB,里面有任何想要得所有进程相关信息
至于由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息。我觉得这个函数有问题,建议用ObReferenceObjectByHandle。
系统服务表是当用户模式应用程序进入核心模式要调用ntoskrnl.exe的输出函数时的转换分发表。通常的挂钩方法是挂前者,挂后者比较困难,但需要将内存中要挂钩的函数入口点代码搬移,假如你的挂钩,一般代码段是只读的,你需要新映射段描述符
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
游客

返回顶部