-
-
[求助]有关vmp壳与过滤驱动文件重定向
-
2018-9-29 01:23
3595
-
各位大佬,小弟在编写64位驱动时遇到了一些问题,请赐教!
1,编写的驱动打上签名后能正常加载,但用vmprotecr3.2加壳以后再签名,却不能加载了,不知道是什么地方出了问题?(我把所有的函数都用VmprotectUltra保护起来了,是否我的操作不正确?)
2,我使用minifilter编写了一段文件重定向函数,如果被比较的文件路径是常量的话没有任何问题,但当我换成链表时却出现了问题:我自行实现了带自旋锁的插入删除链表项函数和查表函数,插入和删除函数在DeviceIoControl函数中被调用,应用层可以随时传递文件路径,且路径均经过处理变为/Device/...开头的格式。在PRE_CREATE回调里成功获取正处理的文件路径后调用查表函数进行比对,若符合则重定向之。在第一次添加文件路径时驱动正常工作,但删除或者第二次添加文件路径时却蓝屏了。(貌似我调用操作其他无关链表的函数也会造成蓝屏?!)而如果在第一次添加文件路径后直接卸载驱动却不会蓝屏。
是因为一边操作链表一边遍历链表导致出问题?(我觉得貌似不是这个原因)还是说除了PRE_CREATE以外还需要在其他回调里做文章?又或者是问题出在其他地方,是由于我学艺不精导致的?
望各位大佬指点一二~!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课