易语言教程_易语言源码_易语言写挂_易语言论坛_看流星社区

 找回密码
 注册
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
零基础辅助入门教学 原创 高清 专业课程售后(每日解答)
赞助广告位 请点击这里联系站长 QQ20209081
赞助广告位 请点击这里联系站长 QQ20209081
赞助广告位 请点击这里联系站长 QQ20209081
查看: 2734|回复: 24

不少人不知道怎么过完美的DbgkpProcessDebugPortMutex,高手飘过

[复制链接]
发表于 2012-2-19 15:50:02 | 显示全部楼层 |阅读模式
不少人不知道怎么过完美的DbgkpProcessDebugPortMutex,高手飘过
修改DbgkpProcessDebugPortMutex后调试程序就会让你的调试器死掉关都关不掉只有重新启动,OK,有这个症状的就是DbgkpProcessDebugPortMutex被修改了

其原理是:
利用DebugAPI 调试程序时(od就是利用DebugAPI),系统通过 DbgkForwardException 函数给调试器发送异常等消息。DbgkForwardException 函数又会调用 DbgkpSendApiMessage 函数给调试对象发送调试消息。DbgkpSendApiMessage 再调用 DbgkpQueueMessage 函数把调试消息插入到调试对象的事件队列里面,插入前先获取一个 DbgkpProcessDebugPortMutex 快速互斥体。
根据调试器的这个流程,我们可以写一个驱动始终占有 DbgkpProcessDebugPortMutex,那么被调试进程就会挂在内核代码里面,始终得不到执行

知道原因就好办了
游客,如果您要查看本帖隐藏内容请回复
发表于 2012-2-21 13:27:18 | 显示全部楼层
哦看看怎么解决的
发表于 2012-2-21 15:27:58 | 显示全部楼层
看看  什么东东?
发表于 2012-2-21 19:30:20 | 显示全部楼层
回复 1# 萦萦


    完美的有保护
发表于 2012-2-24 21:47:08 | 显示全部楼层
楼主你能共享下这个调试工具吗?
发表于 2012-5-2 09:17:55 | 显示全部楼层
方法方法方法方法方法
发表于 2012-5-2 11:39:15 | 显示全部楼层
看看。。。。
发表于 2012-5-10 16:21:06 | 显示全部楼层
断点!!!!!!!!
发表于 2012-8-30 19:46:35 | 显示全部楼层
看看是怎么解决的
发表于 2012-10-9 09:48:51 | 显示全部楼层
哦看看怎么解决的
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2019-3-23 08:35

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表