首页 > 其他 > 详细

NtDuplicateObject小解读

时间:2018-01-21 15:55:58      阅读:317      评论:0      收藏:0      [点我收藏+]

源进程和目标进程可以是一个吗 当然
执行进程可以是同一个吗 ,当然
标志位重要!有一个关闭源进程的标志位


第一步通过ObReferenceHandleTable获得源进程对象(数据结构) //为新的句柄构造适当的访问和属性
如果不是当前就attach(挂靠)到当前进程
第二步ObReferenceHandleTable获得目进程对象//为新的句柄构造适当的访问和属性
如果不是当前就attach(挂靠)到当前进程
第三步 在二者之间ObduplicateObject句柄
第三步第一步(这一步是ObduplicateObject函数里的步骤):处理源进程如下
先获得源进程句柄表和句柄所代表的对象

技术分享图片

第三步第二步:ObduplicateObject函数里的ObReferenceProcessHandleTable()
含义:ObReferenceProcessHandleTable()这个函数里找到源进程句柄表项 然后获得了指针,具体如下

技术分享图片

 

回到ObDupLicateObject-->第三步第三步 操作目标:

技术分享图片

 

处理目标进程的句柄表

技术分享图片

 

第四步:ExCreateHandle()

技术分享图片

 


第五步:

技术分享图片

 

NtDuplicateObject小解读

原文:https://www.cnblogs.com/L-Sunny/p/8324096.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!