漏洞信息详情
Microsoft Windows工作站服务远程缓冲区溢出漏洞(MS03-049/KB828749)
- CNNVD编号:CNNVD-200312-058
- 危害等级: 高危
- CVE编号:
CVE-2003-0812
- 漏洞类型:
边界条件错误
- 发布时间:
2003-11-11
- 威胁类型:
远程
- 更新时间:
2005-10-20
- 厂 商:
microsoft - 漏洞来源:
Microsoft Security… -
漏洞简介
Microsoft DCE/RPC服务可以提供网络管理功能,这些功能提供管理用户帐户和网络资源管理的功能。部分网络管理功能在Windows目录下的\”debug\”子目录会生成调试日志文件。
Microsoft Workstation服务在处理日志记录时缺少充分的边界缓冲区检查,远程攻击者可以利用这个漏洞提供超长参数触发缓冲区溢出,以SYSTEM权限在系统上执行任意指令。
日志功能中使用vsprintf()在日志文件中生成字符串,日志文件名为\”NetSetup.LOG\”,其保存在Windows \”debug\”目录中。
这个记录函数有部分处理Workstation服务命令的函数调用,如\”NetValidateName\”, \”NetJoinDomain\”等,在这NetValidateName()中,\”computer name\”作为第二个参数最终记录在日志文件中。
如我们使用NetValidateName() API:
NetValidateName(L\”\\\\192.168.0.100\”,\”AAAAAAAA\”,NULL,NULL,0);
那么我们可以在远程主机中产生如下记录条目:
08/13 13:01:01 NetpValidateName: checking to see if \’\’\’\’ is valid as type 0 name
08/13 13:01:01 NetpValidateName: \’\’\’\’ is not a valid NetBIOS \\AAAAAAAA name: 0x57
如果我们指定超长字符串作为NetValidateName() API的第二个参数,如果调试文件可写就可以在特定主机上发生缓冲区溢出。
一般如果是NTFS文件系统,在Windows目录中的\”debug\”目录不允许所有人可写,这表示不能使用NULL会话来生成日志。WsImpersonateClient() API在打开日志文件前调用,如果连接客户端没有有效的权限来写日志文件,那么CreateFile()就会失败,vsprintf()就不会被执行,因此此漏洞在FAT32系统和\”\\%SYSTEMROOT\\%\debug\”目录可写的情况下可被利用。
但是部分扩展RPC函数实现在Windows XP上在调用WsImpersonateClient()前打开日志文件,不过这些RPC函数没有提供文档化说明,不过可以观察在WKSSVC.DLL中的函数表观察到。这些扩展命令的RPC号开始于0x1B,如0x1B调用NetpManageComputers(),但在打开日志文件前不调用WsImpersonateClient()。
NetpManageComputers()的使用没有被公开化,但是我们可以在\”LMJoin.h\”中找到NetAddAlternateComputerName() API的原型定义,这个API从NETAPI32.DLL导出,这个API也一样没有文档化。我们可以执行这个RPC函数(0x1B)使用如下API产生包:
NetAddAlternateComputerName(L\”\\\\192.168.0.200\”,long_unicode_string,NULL,NULL,0);
我们不需要特殊权限在远程主机上写第二个产生到日志文件中,如定义超长Unicode字符串作为第二个参数(\”AlternateName\”),在第一个参数定义的远程系统就会由于缓冲区溢出而崩溃。Unicode字符串\”long_unicode_string\”会在日志记录函数调用前被转换为ASCII字符串。
漏洞公告
临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
* 在防火墙上过滤UDP 138, 139, 445端口和TCP 138, 139, 445端口。
* 使用个人防火墙过滤进入的流量,比如Windows XP捆绑的Internet连接防火墙。
* 在Windows 2000和Windows XP自带的高级TCP/IP过滤。
* 禁用Workstation服务。
注意: 禁用此服务将导致很多依赖它的服务失效,例如您将不能访问共享资源, 不能使用拨号、 *DSL、Cable modem连接等等。仅推荐有经验的用户使用此方法。
厂商补丁:
Microsoft
———
Microsoft已经为此发布了一个安全公告(MS03-049)以及相应补丁:
MS03-049:Buffer Overrun in the Workstation Service Could Allow Code Execution (828749)
链接:http://www.microsoft.com/technet/security/bulletin/MS03-049.asp” target=”_blank”>
http://www.microsoft.com/technet/security/bulletin/MS03-049.asp
补丁下载:
Microsoft Windows 2000 Service Pack 2, Service Pack 3, Service Pack 4
http://www.microsoft.com/downloads/details.aspx?FamilyId=2467FE46-D167-479C-9638-D4D79483F261&displaylang=en” target=”_blank”>
http://www.microsoft.com/downloads/details.aspx?FamilyId=2467FE46-D167-479C-9638-D4D79483F261&displaylang=en
Microsoft Windows XP, Microsoft Windows XP Service Pack 1
http://www.microsoft.com/downloads/details.aspx?FamilyId=F02DA309-4B0A-4438-A0B9-5B67414C3833&displaylang=en” target=”_blank”>
http://www.microsoft.com/downloads/details.aspx?FamilyId=F02DA309-4B0A-4438-A0B9-5B67414C3833&displaylang=en
Microsoft Windows XP 64-Bit Edition
http://www.microsoft.com/downloads/details.aspx?FamilyId=2BE95254-4C65-4CA5-80A5-55FDF5AA2296&displaylang=en” target=”_blank”>
http://www.microsoft.com/downloads/details.aspx?FamilyId=2BE95254-4C65-4CA5-80A5-55FDF5AA2296&displaylang=en
参考网址
来源:US-CERT Vulnerability Note: VU#567620
名称: VU#567620
链接:http://www.kb.cert.org/vuls/id/567620
来源:CERT/CC Advisory: CA-2003-28
名称: CA-2003-28
链接:http://www.cert.org/advisories/CA-2003-28.html
来源: BID
名称: 9011
链接:http://www.securityfocus.com/bid/9011
来源: MS
名称: MS03-049
链接:http://www.microsoft.com/technet/security/bulletin/MS03-049.asp
来源: BUGTRAQ
名称: 20031111 EEYE: Windows Workstation Service Remote Buffer Overflow
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106859247713009&w=2
来源: CISCO
名称: 20040129 Buffer Overrun in Microsoft Windows 2000 Workstation Service (MS03-049)
链接:http://www.cisco.com/warp/public/707/cisco-sa-20040129-ms03-049.shtml
来源: BUGTRAQ
名称: 20031112 Proof of concept for Windows Workstation Service overflow
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=106865197102041&w=2
来源: US Government Resource: oval:org.mitre.oval:def:575
名称: oval:org.mitre.oval:def:575
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:575
来源: US Government Resource: oval:org.mitre.oval:def:331
名称: oval:org.mitre.oval:def:331
链接:http://oval.mitre.org/repository/data/getDef?id=oval:org.mitre.oval:def:331