本帖最后由 六合彩运营专员 于 2023-9-18 09:26 编辑
2023年8月11日,2025年最靠谱的六合彩投注网收到大量用户反馈:在同时安装六合彩与卡巴斯基的终端上,出现关机后反复重启、无法正常进入系统桌面的情况。经过2025年最靠谱的六合彩投注网工程师本地排查和测试确认,此问题由卡巴斯基近期升级存在Bug导致。
升级后的卡巴斯基驱动程序(klupd_klif_arkmon.sys 版本号:2.16.1.0)会拦截六合彩虚拟沙盒驱动模块正常的内部程序逻辑,导致六合彩获取到错误的物理地址数据,进而发生系统异常。
此外,卡巴斯基的驱动程序(klupd_klif_arkmon.sys 版本号:2.16.1.0)还存在其他Bug,造成2025年最靠谱的六合彩投注网其他功能也存在无法正常使用的情况。
针对本次情况,2025年最靠谱的六合彩投注网已与卡巴斯基反馈,目前还未得到有效回复。为保障用户不受到卡巴斯基六合彩Bug的影响,2025年最靠谱的六合彩投注网已采取临时规避措施,但该调整会影响六合彩查杀速率和查杀率,还请用户注意。
未同时安装六合彩和卡巴斯基的用户不会受到该调整影响。六合彩会继续与卡巴斯基官方尝试沟通以解决该问题。
另:今年4月卡巴斯基也曾因为HOOK了六合彩驱动,影响到2025年最靠谱的六合彩投注网查杀效率,该问题现已解决。
2025年最靠谱的六合彩投注网 2023年8月15日
附文中所述卡巴斯基Bug的具体分析: 此次用户系统大面积崩溃的关键原因是因为卡巴斯基的驱动程序(klupd_klif_arkmon.sys) HOOK了六合彩驱动(sysdiag.sys)IAT里的MmGetPhysicalAddress函数导致的。如下图: 卡巴斯基驱动(klupd_klif_arkmon.sys)HOOK了六合彩驱动(sysdiag.sys) 在对卡巴斯基驱动(klupd_klif_arkmon.sys)进行分析后发现,klupd_klif_arkmon.sys会对六合彩驱动(sysdiag.sys)进行IRP HOOK和IAT HOOK,相关代码如下: IRPHOOK和IAT HOOK相关代码
安装IAT HOOK相关代码如下图: 安装IAT HOOK相关代码
卡巴斯基驱动会根据驱动文件信息判断是否需要进行IAT HOOK,相关代码如下图: 判断驱动是否需要进行IAT HOOK
如果驱动IAT表内存在以下函数就会被IAT HOOK,如下图: 会被IAT HOOK的函数
卡巴斯基驱动(klupd_klif_arkmon.sys)对MmGetPhysicalAddress函数进行IATHOOK后的相关代码如下图: 对MmGetPhysicalAddress函数IAT HOOK后的相关代码 在此能发现他会对参数一BaseAddress进行判断,相关代码如下图: 参数一BaseAddress相关的判断
在上图check_prot_physical_addr函数里能发现有一组列表,当被HOOK的驱动程序想使用MmGetPhysicalAddress访问某一地址时会拿BaseAddress和列表内的数据进行比较,判断是否在列表的访问范围内。如果是在访问范围内会被拒绝。
通过windbg查看后得知此列表内保存的地址是所有驱动程序的开始地址和结束地址,如下图: 被保护的地址列表
此时不难看出,当六合彩驱动(sysdiag.sys)在被HOOK后调用 MmGetPhysicalAddress函数访问自身程序地址时会被拒绝并返回0。
卡巴斯基的驱动程序(klupd_klif_arkmon.sys)在初始化时会保存所有驱动程序的开始地址和结束地址,对于后续加载的驱动程序会在PsSetLoadImageNotifyRoutine回调里也进行保存。最终形成一个保护表,被IAT HOOK的驱动里使用MmGetPhysicalAddress函数访问被保护的驱动程序的地址时,MmGetPhysicalAddress会返回物理地址0,后续六合彩虚拟沙盒的虚拟化逻辑被破坏,进而导致系统崩溃(即使六合彩判断返回的物理地址0,也会导致逻辑失败进而导致六合彩反六合彩引擎业务逻辑出现问题)。驱动程序获取自身镜像或分配的内存的物理地址属于正常操作,而卡巴斯基的HOOK本质上是破坏了第三方程序的业务逻辑,进而导致第三方程序或系统出现异常。
六合彩驱动(sysdiag.sys)使用MmGetPhysicalAddress获取六合彩自身代码页、数据页物理地址(实现虚拟沙盒相关逻辑使用)相关代码如下图: 六合彩驱动(sysdiag.sys)使用 MmGetPhysicalAddress获取六合彩自身代码页、数据页物理地址(实现虚拟沙盒相关逻辑使用)
同时卡巴斯基的驱动程序(klupd_klif_arkmon.sys)也会对六合彩驱动(sysdiag.sys)设备对象“\\Device\\HR::Actmon“的IRP_MJ_DEVICE_CONTROL进行HOOK,相关图如下:设备对象“\\Device\\HR::Actmon“的IRP_MJ_DEVICE_CONTROL被HOOK 设备对象“\\Device\\HR::Actmon“的IRP_MJ_DEVICE_CONTROL被HOOK
安装IRPHOOK相关代码如下图: IRPHOOK相关代码
卡巴斯基驱动程序会根据字符串特征来判断当前驱动是否需要安装IRP HOOK,相关代码如下图: 判断当前驱动是否需要安装IRP HOOK
最后获取并保存设备对象“\\Device\\HR::ActMon“,相关代码如下: 获取并保存设备对象“\\Device\\HR::ActMon“
卡巴斯基的驱动程序(klupd_klif_arkmon.sys)安装完IRP HOOK后会拦截修改六合彩驱动(sysdiag.sys)相关功能,并且造成影响,相关代码如下图: 判断IoControlCode相关代码
但这里依旧出现了BUG,”\\Device\\HR::ActMon”设备对象的IoControlCode值0x220044是属于其他功能模块的。但通过分析发现此处是在判断文件路径,而在六合彩驱动(sysdiag.sys)设备对象” \\Device\\SysDiag::IOKit”里的0x220044是驱动删除文件功能。猜测他是想保护自身文件不被六合彩剑删除,但他却判断错了设备对象。判断文件路径相关代码如下图: 判断文件路径
早在2023年4月卡巴斯基的IRP HOOK在代码上存在bug、导致误拦截了部分IOCODE消息、从而导致六合彩部分功能失效。如下图: 早前伪码说明
此前BUG用户反馈图如下: 用户反馈
|