阅读:3398回复:4
请教:Hook了ZwWriteFile后无法用原来的ZwWriteFile函数写文件的问题
大家好,我在驱动里面Hook了ZwCreateFile和ZwWriteFile,发现都无法调用原来的函数创建文件和写入文件了,调用RealCreateFile的话会返回STATUS_ACCESS_VIOLATION或者STATUS_INVALID_PARAMETER的错误,我在另外一个贴中有说明:
http://bbs.driverdevelop.com/htm_data/16/0705/101781.html 如果调用RealWriteFile的话则返回STATUS_INVALID_HANDLE的错误。而如果没有Hook了ZwCreateFile和ZwWriteFile函数的话,发现操作是成功的,但现在必须Hook这两个函数,然后作一下记录再写入文件,请问大家有什么方法呢?谢谢大家 |
|
最新喜欢:linshi... |
沙发#
发布于:2007-05-19 15:00
楼主,我跟你遇到的问题是一样的,不知道你的问题解决了么?qq:94381267
我也发了一个帖子,http://bbs.driverdevelop.com/htm_data/98/0705/102006.html |
|
板凳#
发布于:2007-05-29 01:45
返回c0000005错误的原因是 因为你传递给ZwCreateFile的参数 的地址是 大于
MM_USER_PROBE_ADDRESS,就是NtCreateFile的1,3,4参数及OBJECT_ATTRIBUTES.ObjectName.Buffer这几个指针, 用到指针的地方都用ZwAllocateVirtualMemory来申请内存作为参数,不要用局部变量 因为在内部函数IopCreateFile中会对传入参数进行判断 |
|
地板#
发布于:2008-10-11 15:51
引用第2楼meilimeimei于2007-05-29 01:45发表的 : 这个地方ZwAllocateVirtualMemory具体该怎么用啊?谢谢诶! |
|
地下室#
发布于:2008-10-11 17:33
不要用ALLOCATE MEMORY这么白痴的办法,参考此贴我的回复:
http://bbs.driverdevelop.com/htm_data/16/0809/113576.html |
|
|