阅读:1220回复:4
有关进程控制的若于问题,热烈欢迎大家讨论
1 由一个进程的句柄能够得到进程的那些信息,如何获得,使用那些函数?线程的又如何?
2 系统服务表和ntoskrnl.exe的输出函数表之间的关系是什么?通常的挂钩方法是挂前者,挂后者的结果是什么?两者有什么联系? 3 寻inside windows 2k 的光盘。 4 在驱动中由一个进程的ID,如何进一步得到其它信息?由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息,为什么?PEB 是动态变化的吗?是多个进程使用一个,谁运行谁使用吗?还是各自有一个?比如说由一个ID号,如何得到其进程参数信息,所在目录等。 |
|
最新喜欢:![]() |
沙发#
发布于:2005-01-06 17:10
关注、学习中 。。。
个人认为,只要得到进程的ID,且进程没有结束,那就可以得到进程的所有信息,就看你需要什么信息了。 [编辑 - 1/6/05 by fslife] |
|
|
板凳#
发布于:2005-01-07 09:30
由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,
可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息,为什么?PEB 是动态变化的吗?是多个进程使用一个,谁运行谁使用吗? 还是各自有一个?比如说由一个ID号,如何得到其进程参数信息,所在目录等。 |
|
地板#
发布于:2005-01-07 09:31
由一个ID号,如何得到其进程参数信息,所在目录等。
|
|
地下室#
发布于:2005-01-07 09:57
在内核中可以用ObReferenceObjectByHandle将句柄转换为指向对象体的指针,该处便为进程控制块。线程为线程控制块TEB,里面有任何想要得所有进程相关信息
至于由PsLookupProcessByProcessId得到EPROCESS后,可以得到进程名,可我从EPROCESS中包含的PEB中得到的信息都是当前进程信息。我觉得这个函数有问题,建议用ObReferenceObjectByHandle。 系统服务表是当用户模式应用程序进入核心模式要调用ntoskrnl.exe的输出函数时的转换分发表。通常的挂钩方法是挂前者,挂后者比较困难,但需要将内存中要挂钩的函数入口点代码搬移,假如你的挂钩,一般代码段是只读的,你需要新映射段描述符 |
|
|