术之一。本文通过一个例子向你展示通过钩住本机API可以实现的能力-正如你所见,我们已设法防止未被授权的程序的执行-这可以通过钩住单一的本机API函数来实现。你可以进一步扩展这个方法,并且获得对硬件设备、文件IO操作、网络流量等等的完全控制。然而,我们现在的解决方案并不是准备为内核模式API调用者所用-一旦内核模式代码被允许直接调用ntoskrnl.exe的输出,则这些调用就不需要经由系统服务发送者进行了。
本文源码在运行Windows XP SP2的若干机器上成功地测试过。尽管我还没在任何另外的环境下面测试它,我相信它应该到处工作正常-不管怎么说,它从未使用任何系统特定的结构。为了运行这个示例,所有你要做的是放置protector.exe和protector.sys到相同的目录下,并且运行protector.exe。直到protector.exe的应用程序窗口被关闭为止;否则,每次你都会被提示你试图运行任何可执行程序。