Microsoft Windows MSDTC无效内存访问 拒绝服务漏洞

CNNVD-ID编号 CNNVD-200605-156
CVE编号 CVE-2006-1184
发布时间 2006-05-09
更新时间 2006-05-10
漏洞类型 边界条件错误
漏洞来源 Derek Soeder dsoeder@eeye.com
危险等级 中危
威胁类型 远程
厂 商 microsoft

漏洞介绍

Microsoft Windows是美国微软(Microsoft)公司发布的一系列操作系统。

Windows系统的MSDTC处理某些畸形DCE-RPC请求时存在内存分配漏洞,远程攻击者可能利用此漏洞对服务器执行拒绝服务攻击。

MS05-051中所述的MSDTC RPC漏洞利用的是MSDTCPRX.DLL中MIDL_user_allocate函数实现内存管理器的方式。该函数接收任何分配大小,但最多只能分配4KB的内存。然后RPCRT4会试图将管理数据储存到(memory address + requested size),这就可能导致修改任意内存,因为任意大小的分配尝试都会成功,但所保留的内存最多只有4KB。

MS05-051的hotfix对分配大小设置了上限,在Windows Server 2003为0xFA8,在Windows 2000中为0xFB0。这种检查还不足以防范对所分配4KB以外内存的访问。在Windows 2000上,如果将单个BuildContextW请求的\"UuidString\"或\"GuidIn\"设置为最大字符计数0x7D0的话,就会导致默认状态的MSDTC崩溃。

漏洞补丁

目前厂商已经发布了升级补丁以修复这个安全问题,补丁下载链接:

参考网址

受影响实体

信息来源