R3->符号链接->设备对象->驱动对象->驱动功能驱动通信实质上是设备通信设备是挂在驱动上的DeviceObject上面的正常IO通信R0:R3:
正常的设备通信会被各种ark或其他工具遍历到winobj:https://learn.microsoft.com/zh-cn/sysinternals/downloads/winobjdevicetree.exe其次通过无模块加载技术加载的驱动没有驱动对象,也无法创建正常的io通信。所以我们另寻通信方式。
任何能从3环主动发起0环能接收到的API或方法都能作为通信方法,如果对通信的实时性没要求也可去掉“主动”一词
1.劫持io通信故名意思,去劫持系统白名单驱动的通信。在导入表有查看是否有建立IO通信的函数发现没有IRP_MJ_DEVICE_CONTROL我们可以给他增加一个来作为我们的通信
2.minifilter端口3.共享内存3环申请一块内存,0环使用mdl映射
回复或点赞可查看完整内容
---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-287697.htm