Windows内核:修补OS模块中的代码

时间:2014-10-26 11:19:44

标签: kernel driver kernel-module windows-kernel

环境:

  1. Windows 8.1(x64)
  2. Visual Studio
  3. WinDbg的
  4. 在驱动程序启动时,我需要更改bthport.sys的单个字节来改变它的运行时行为,遗憾的是,在更新指令时,我能够找到要更新的确切位置我得到了GeneralProtection faliure,设置CR0寄存器的WP标志没有帮助。

    如何以编程方式控制内核模式驱动程序中的页面保护?

2 个答案:

答案 0 :(得分:0)

检查" Windows 8内核内存保护旁路"在:https://labs.mwrinfosecurity.com/blog/2014/08/15/windows-8-kernel-memory-protections-bypass/

答案 1 :(得分:0)

您可以尝试修改代码而不更改页面保护。这取决于您需要更改此字节的位置。对于某些驱动程序,发生了IRP Major和IRP Minor回调保存在.DATA部分。如果代码在这个回调中,你可以用自己的代码替换它们(注意它们使用的全局)。