partime
驱动牛犊
驱动牛犊
  • 注册日期2002-02-27
  • 最后登录2009-11-09
  • 粉丝0
  • 关注0
  • 积分211分
  • 威望61点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
阅读:1645回复:4

驱动内存补钉问题,另外开贴,核心地址保护

楼主#
更多 发布于:2008-04-17 11:29
继续上一问题http://bbs.driverdevelop.com/htm_data/16/0804/110507.html
通过分析,基本上可以判断并非打补钉后驱动执行时蓝屏
而是执行打补钉的操作时蓝屏

*(((unsigned char *)lpDriverBasePtr) + PatchOffset)  = 0xE9;

即使将0xE9改为原该地址的值,即修改前后实际无任何差别,系统也会蓝
看起来是核心内存地址保护,禁止写入
该核心地址为0xEDXXXXXX
如果确实是核心地址保护,如何才能写呢?

wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2008-04-17 12:17
一般情况下修改CR0以后系统内核都可以写,所以不会有问题,关键在于你PATCH那个驱动有没有做什么手脚呢?你把那驱动发上来看下.另外检查下你的GDT,IDT有没有什么异常.
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
partime
驱动牛犊
驱动牛犊
  • 注册日期2002-02-27
  • 最后登录2009-11-09
  • 粉丝0
  • 关注0
  • 积分211分
  • 威望61点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-04-17 13:13
其他什么都没做啊
就用*Ptr = Value
赋了一下值

执行上下文是NtVdmControl
WQXNETQIQI
驱动大牛
驱动大牛
  • 注册日期2006-06-12
  • 最后登录2010-10-26
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望1076点
  • 贡献值0点
  • 好评度895点
  • 原创分1分
  • 专家分0分
地板#
发布于:2008-04-17 22:35
又是玩0DAY啊,太没意思了
驱动开发者 呵呵
zjjmj2002
驱动小牛
驱动小牛
  • 注册日期2007-04-05
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望321点
  • 贡献值0点
  • 好评度224点
  • 原创分1分
  • 专家分0分
地下室#
发布于:2008-04-18 10:51
把NtVdmControl干掉。
游客

返回顶部