首页 > 其他 > 详细

驱动保护:移除SSDT内核钩子(2)

时间:2019-09-21 17:33:39      阅读:108      评论:0      收藏:0      [点我收藏+]

SSDT 中文名称为系统服务描述符表,该表的作用是将Ring3应用层与Ring0内核层,两者的API函数连接起来,起到承上启下的作用,SSDT并不仅仅只包含一个庞大的地址索引表,它还包含着一些其它有用的信息,诸如地址索引的基址、服务函数个数等,SSDT 通过修改此表的函数地址可以对常用 Windows 函数进行内核级的Hook,从而实现对一些核心的系统动作进行过滤、监控的目的。

通过前面的学习我们已经可以编写一个驱动程序并挂钩到指定的内核函数上了,接下来我们将一步步的通过编写驱动程序,手动的来解除 NtOpenProcess 函数的驱动保护,以此来模拟如何一步步干掉游戏保护。

一般情况下当游戏启动的时候都会加载保护,而这种保护通常都是通过在SSDT层挂钩来实现的,而一旦函数被挂钩那么通过前面的读取方式就无法读取到函数的原始地址了,如下图是一个被Hook过的函数,可以看到函数的当前地址与原始地址已经发生了明显的变化。

技术分享图片

驱动保护:移除SSDT内核钩子(2)

原文:https://www.cnblogs.com/LyShark/p/11563775.html

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