0

我从用户空间读取地址并使用 RtlCopyMemory() 将数据复制到我的输出缓冲区,虽然我可以正常工作,但它缺乏任何安全防范措施来防止读取无效地址,这会在我的脸上抛出错误检查。

我知道我需要使用 SEH 来执行此操作,但我不确定我需要处理哪些异常,或者 RtlCopyMemory 是否会引发任何异常。如果不是,我如何在将地址传递给 RtlCopyMemory() 之前检查该地址是否有效?

4

1 回答 1

0

阅读有关 ProbeForRead 和 ProbeForWrite 的信息,另外我建议您阅读以下内容:

http://download.microsoft.com/download/d/1/d/d1dd7745-426b-4cc3-a269-abbbe427c0ef/sys-t774_ddc08.pptx

http://www.codeproject.com/Articles/9575/Driver-Development-Part-Introduction-to-Implemen

于 2015-03-02T08:54:29.920 回答