本项目基于两个著名黑客项目增量开发 通过kdmapper手动映射DBK驱动,并重构DBK原DeviceIoControl方法与Cheat Engine的通讯机制,绕过微软签名
本项目的内容和目的,是在基于kdmmaper和Cheat Engine的开源项目,手动映射Cheat Engine的DBKKernel驱动,实现DBK驱动模块隐藏,与应用层Cheat Engine应用通讯,DBVM加载、内存搜索、软件调试等、官方版CE全部功能
1、绕过微软驱动强制签名问题,无论官方,还是自编译Cheat Engine项目都无法绕过驱动签名问题,本项目核心解决如此
2、解决Cheat Engine DBKKernal驱动特征(如注册表、服务名,驱动模块)等特征,容易被特征识别,在内核中真正无模块或内存特征运行
3、DBKKernal源码级别重构,精简官方DBK项目中多出逻辑Bug,和结构混乱,去除冗余项目代码,补全未完成的开发功能,更新微软驱动开发库,排除编译问题
4、移植kdmapper项目在应用层实现的内核模块遍历,和内核特征码匹配到内核层,在内核层实现内核模块遍历,特征匹配
5、正常实现DBVM所有功能,初始化,调试器,内存扫描,实现真正的VT级别调试读写
原Cheat Engine DBKKernl通讯机制限制
1、Cheat Engine 的常规通讯方式 为调用Windows应用原生API读写内存,和其他的一些功能,这些应用层api会被安全类软件或是游戏反作弊引擎拦截,无法实现所需功能
2、第二种则是通过DBK驱动,向DBK内核驱动发送通讯控制码,和输入输出缓存,实现通讯并实现内核CE功能,但需要DBK驱动加载成功后才能实现,现有驱动签名均无法在最新版本Windows上检查通过
3、第三种通过DBVM设备,即一个内核VT虚拟机设备来实现通讯,如果DBVM已经加载,则DBK的相关控制派遣函数会被通过DBVM转发到DBK来实现功能,但是加载DBVM设备需要通过DBK 去启动,那么DBK就必须获得微软的签名,因此仍然无法解决驱动签名问题