能力值:
( LV9,RANK:610 )
|
-
-
2 楼
什么“复数个进程中”啊?看不懂。。。
|
能力值:
( LV6,RANK:80 )
|
-
-
3 楼
多谢教主关注,
是这个意思,
比如
进程1,有一个File类型的句柄0x0100
进程2也有一个File类型的句柄0x0100
这两个File是不同的文件,路径也应该不同,
而ZwQueryInformationFile参数里面没有区分进程,
传进去句柄值0x0100就会返回其中的一个路径,
如果光根据Handle感觉不行,
不知道如何正确的取得不同进程里面相同的句柄值的
文件的路径呢?
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
拿到目标进程句柄 按套路查询就可以了 管它句柄是不是一样。。
每个进程上下文都不同哦
|
能力值:
( LV9,RANK:610 )
|
-
-
5 楼
你说的ZwQueryInformationFile是指ring3的ntdll!ZwQueryInformationFile?
ring3的话,这个句柄自然只有是当前进程中的句柄才能返回正确的结果,其它进程中的句柄,你只能看,不能使用,即使你知道它里面有个文件句柄,值是0x100,这也没用,想用就DuplicateObject复制过来再操作~~
如果是ring0的话,句柄没有指定OBJ_KERNEL_HANDLE标志的话,情况是一样的~
如果有这个标志,那么这个句柄在哪个进程空间都可以使用,因为系统会根据这个标志来选用内核句柄表(即System进程的句柄表),所在在哪个进程空间都无所谓~
说到底,就是这个句柄指向的对象位于哪个句柄表中的问题,是当前进程,是其它进程,还是System进程~~
先把这个搞清楚吧
|
能力值:
( LV6,RANK:80 )
|
-
-
6 楼
多谢教主大牛,
原来在ring3要先OpenProcess再DuplicateHandle才能ZwQueryInformationFile。。。
真是让教主见笑了。。。
不过看来还是到ring0里面比较好啊,
openprocess太容易被hook了。。。
|
|
|