CVE-2001-0015
CVSS7.2
发布时间 :2001-03-12 00:00:00
修订时间 :2008-09-05 16:23:03
NMCO    

[原文]Network Dynamic Data Exchange (DDE) in Windows 2000 allows local users to gain SYSTEM privileges via a "WM_COPYDATA" message to an invisible window that is running with the privileges of the WINLOGON process.


[CNNVD]Win2000 NetDDE消息权限提升漏洞(CNNVD-200103-072)

        CVE(CAN) ID: CVE-2001-0015
        
        
        
        网络动态数据交换(Network Dynamic Data Exchange)是一种在不同的Windows机器上的
        
        应用程序之间动态共享数据的技术。这种共享是通过名为受信任共享(trusted shares)
        
        的通信通道来完成的,受信任共享由网络DDE代理服务来管理。本地机器上的进程可以向网
        
        络DDE代理发出请求,包括指定针对某个特定的受信任共享应该运行什么应用程序。但是由
        
        于网络DDE代理运行在本地系统用户的安全上下文中并在此安全上下文中处理所有请求,因
        
        此攻击者就有机会让网络DDE代理在本地系统用户的安全上下文中执行其指定的代码,从而
        
        提升权限并完全控制本地机器。
        
        
        
        细节描述如下:
        
        
        
        Network DDE DSDM(DDE Share Database Manager)服务负责维护所有活动的网络DDE
        
        共享的一个列表并管理NetDDE连接。当该服务启动时,在当前登录用户的桌面上将创建一
        
        个隐藏的IPC窗口,用来与打开了DDE特性的应用程序进行通信。该窗口所处理的消息及其
        
        格式未在正式文档中描述。
        
        
        
        窗口的名字是"NetDDE Agent",类名是"NDDEAgent"。由于窗口是由WINLOGON创建的,
        
        窗口过程将运行在WINLOGON的进程空间中,它以SYSTEM的权限来处理消息。该窗口所处理
        
        的消息之一是"WM_COPYDATA"消息,DDE用该消息将一块内存从一个进程传递给另一个进
        
        程。绝大多数窗口间通信通常是由PostMessage( )来完成的,但WM_COPYDATA消息却是由SendMessage( )函数来发送的,并由底层的消息子系统(CSRSS)作为一种特殊情况进行
        
        处理。
        
        
        
        通过该消息发送给隐藏窗口的结构具有如下格式:
        
        4 字节 - E1 DD E1 DD (魔数: 0xDDE1DDE1)
        
        4 字节 - 01 00 00 00 (未知: 0x00000001)
        
        4 字节 - 01 00 00 00 (未知: 0x00000001)
        
        8 字节 - 05 00 00 09
        
         00 00 00 01 (DDE Share Mod Id)
        
        4 bytes - CC CC CC CC (未知: 未使用?)
        
        ASCIIZ - "SHARENAME$" (以NULL结尾的串: DDE受信任的共享名)
        
        ASCIIZ - "cmd.exe" (以NULL结尾的串: DDE服务器启动命令)
        
        
        
        当上述缓冲区传递给窗口过程时,它将首先检查3个魔数(即前12个字节)的值,如果与
        
        上述的值不同,则消息处理过程将返回一个错误。否则就取出两个ASCIIZ串并将其转换成
        
        Unicode串,然后检查共享名以确保它存在并且是一个受信任的共享。
        
        
        
        由于默认情况下在系统中存在几个受信任共享,因此可以对其进行穷举,对每个共享名都
        
        尝试运行命令直到找到一个受信任的共享。"DDE Share Mod ID"将和上述结构中的对
        
        应的数进行比较,如果相等则将在WINLOGON进程的上下文中执行上述第二个ASCIIZ串所
        
        指定的命令,因此将创建一个继承了SYSTEM进程令牌的进程。"DDE Share Mod Id"本
        
        应是一个相对随机的8字节数,但实际上却一直是个常数0x0100000009000005。
        
        
        
        <* 来源:DilDog (dildog@atstake.com)
        
         Microsoft Security Bulletin (MS01-007)
        
        *>
        
        
        
        
        
        

- CVSS (基础分值)

CVSS分值: 7.2 [严重(HIGH)]
机密性影响: COMPLETE [完全的信息泄露导致所有系统文件暴露]
完整性影响: COMPLETE [系统完整性可被完全破坏]
可用性影响: COMPLETE [可能导致系统完全宕机]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)

产品及版本信息(CPE)暂不可用

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2001-0015
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2001-0015
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200103-072
(官方数据源) CNNVD

- 其它链接及资源

http://www.microsoft.com/technet/security/bulletin/MS01-007.asp
(PATCH)  MS  MS01-007
http://www.atstake.com/research/advisories/2001/a020501-1.txt
(VENDOR_ADVISORY)  ATSTAKE  A020501-1
http://xforce.iss.net/xforce/xfdb/6062
(UNKNOWN)  XF  win-dde-elevate-privileges(6062)
http://www.securityfocus.com/bid/2341
(UNKNOWN)  BID  2341

- 漏洞信息

Win2000 NetDDE消息权限提升漏洞
高危 访问验证错误
2001-03-12 00:00:00 2005-10-12 00:00:00
本地  
        CVE(CAN) ID: CVE-2001-0015
        
        
        
        网络动态数据交换(Network Dynamic Data Exchange)是一种在不同的Windows机器上的
        
        应用程序之间动态共享数据的技术。这种共享是通过名为受信任共享(trusted shares)
        
        的通信通道来完成的,受信任共享由网络DDE代理服务来管理。本地机器上的进程可以向网
        
        络DDE代理发出请求,包括指定针对某个特定的受信任共享应该运行什么应用程序。但是由
        
        于网络DDE代理运行在本地系统用户的安全上下文中并在此安全上下文中处理所有请求,因
        
        此攻击者就有机会让网络DDE代理在本地系统用户的安全上下文中执行其指定的代码,从而
        
        提升权限并完全控制本地机器。
        
        
        
        细节描述如下:
        
        
        
        Network DDE DSDM(DDE Share Database Manager)服务负责维护所有活动的网络DDE
        
        共享的一个列表并管理NetDDE连接。当该服务启动时,在当前登录用户的桌面上将创建一
        
        个隐藏的IPC窗口,用来与打开了DDE特性的应用程序进行通信。该窗口所处理的消息及其
        
        格式未在正式文档中描述。
        
        
        
        窗口的名字是"NetDDE Agent",类名是"NDDEAgent"。由于窗口是由WINLOGON创建的,
        
        窗口过程将运行在WINLOGON的进程空间中,它以SYSTEM的权限来处理消息。该窗口所处理
        
        的消息之一是"WM_COPYDATA"消息,DDE用该消息将一块内存从一个进程传递给另一个进
        
        程。绝大多数窗口间通信通常是由PostMessage( )来完成的,但WM_COPYDATA消息却是由SendMessage( )函数来发送的,并由底层的消息子系统(CSRSS)作为一种特殊情况进行
        
        处理。
        
        
        
        通过该消息发送给隐藏窗口的结构具有如下格式:
        
        4 字节 - E1 DD E1 DD (魔数: 0xDDE1DDE1)
        
        4 字节 - 01 00 00 00 (未知: 0x00000001)
        
        4 字节 - 01 00 00 00 (未知: 0x00000001)
        
        8 字节 - 05 00 00 09
        
         00 00 00 01 (DDE Share Mod Id)
        
        4 bytes - CC CC CC CC (未知: 未使用?)
        
        ASCIIZ - "SHARENAME$" (以NULL结尾的串: DDE受信任的共享名)
        
        ASCIIZ - "cmd.exe" (以NULL结尾的串: DDE服务器启动命令)
        
        
        
        当上述缓冲区传递给窗口过程时,它将首先检查3个魔数(即前12个字节)的值,如果与
        
        上述的值不同,则消息处理过程将返回一个错误。否则就取出两个ASCIIZ串并将其转换成
        
        Unicode串,然后检查共享名以确保它存在并且是一个受信任的共享。
        
        
        
        由于默认情况下在系统中存在几个受信任共享,因此可以对其进行穷举,对每个共享名都
        
        尝试运行命令直到找到一个受信任的共享。"DDE Share Mod ID"将和上述结构中的对
        
        应的数进行比较,如果相等则将在WINLOGON进程的上下文中执行上述第二个ASCIIZ串所
        
        指定的命令,因此将创建一个继承了SYSTEM进程令牌的进程。"DDE Share Mod Id"本
        
        应是一个相对随机的8字节数,但实际上却一直是个常数0x0100000009000005。
        
        
        
        <* 来源:DilDog (dildog@atstake.com)
        
         Microsoft Security Bulletin (MS01-007)
        
        *>
        
        
        
        
        
        

- 公告与补丁

        
        
        临时解决办法:
        
        
        
        1、禁止DDE共享。但有些必须使用DDE共享的程序可能无法正常工作。
        
        2、以管理员身份运行ddeshare.exe,删除不必要的受信任共享,默认有
        
        Chat$ (Microsoft Chat),CLPBK$(Clipbook),Hearts$(Microsoft Hearts)。
        
        
        
        厂商补丁:
        
        
        
        微软已经为此发布了一个安全公告以及相关补丁。
        
        微软安全公告(MS01-007):
        
        
        http://www.microsoft.com/technet/security/bulletin/MS01-007.asp

        
        
        
        补丁下载:
        
        英文版:
        http://www.microsoft.com/Downloads/Release.asp?ReleaseID=27526

        
        中文版:
        http://www.microsoft.com/Downloads/Release.asp?ReleaseID=27530

        
        
        
        本补丁可用于Windows 2000 Gold,Service Pack 1,Service Pack 2,并将包
        
        含在Service Pack 3中。
        

- 漏洞信息

1758
Microsoft Windows 2000 Network DDE Escalated Privileges

- 漏洞描述

Unknown or Incomplete

- 时间线

2001-02-05 Unknow
Unknow Unknow

- 解决方案

Unknown or Incomplete

- 相关参考

- 漏洞作者

Unknown or Incomplete
 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站