发布日期:2010-06-11
CVE ID:CVE-2010-1885
受影响的软件及系统:
====================
Windows XP SP2/3
Windows Server 2003 SP2
未受影响的软件及系统:
======================
Windows 2000
Windows Vista
Windows 7
Windows Server 2008
综述:
======
帮助和支持中心是微软Windows操作系统默认安装的访问在线帮助文档的工具,微软通过在浏览器中安装HCP协议处理器的方式实现了直接使用URL访问帮助文档。
HCP协议处理器在处理URL中的字符编码转义时存在漏洞,使传递到帮助和支持中心程序的参数不正确,导致从不可信来源的数据在错误的高权限环境中得到处理,结合其他的已知漏洞远程攻击者可以通过诱使用户访问恶意网页在用户系统上执行任意系统命令,从而以当前执行用户权限控制系统。
此漏洞是一个0day漏洞,相关的技术细节已经公开,微软已经得知了此漏洞的存在并开始研究处理,但还未提供针对此漏洞安全补丁,强烈建议参照临时解决方案进行处理以免受此漏洞的影响。
分析:
======
帮助和支持中心在浏览器中注册了hcp://协议处理器,通过浏览器调用帮助中心程序时会被添加“/fromhcp”命令行参数,此参数启动帮助中心程序的白名单机制,只允许受限的文件和参数交互。
漏洞出现在HCP协议处理器处理URL中可能包含的Unicode和十六进制转义解码的过程中,由于没有检查每个解码操作的返回值,导致可以在URL中添加畸形数据,绕过“/fromhcp”参数的白名单机制,使用户通过网页传递的数据在高权限的环境中处理。结合默认安装的高权限帮助中心应用脚本中存在的代码注入问题和其他的一些技巧,攻击者可以通过诱使用户访问恶意网页触发漏洞无需用户确认即可在系统上执行任意命令,但在攻击过程中系统会弹出帮助和支持中心程序。
此漏洞影响广泛而且导致威胁等级也高,可能被利用来执行挂马攻击,任何调用浏览器内核解析HTML文件的邮件客户端也受此漏洞的影响。
解决方法:
==========
Windows用户可以采用下面几种临时解决方案来减轻漏洞的威胁:
* 暂时去除HCP协议的注册。
在命令窗口中执行:
reg export HKEY_CLASSES_ROOT\HCP hcp_backup.reg
备份注册表中相关的表项到备份文件。
然后执行:
reg delete HKEY_CLASSES_ROOT\HCP /f
删除相关的注册表项去除系统的HCP协议注册。在微软发布的漏洞补丁安装以后,双击备份出来的 hcp_backup.reg 文件导入数据到注册表后即可恢复对HCP的支持。
* 安装第三方的补丁。
漏洞的发现者发布了一个第三方的补丁,高级用户可以自己编译安装,不建议普通用户操作。补丁下载:
http://lock.cmpxchg8b.com/b10a58b75029f79b5f93f4add3ddf992/hcphotfix.zip
厂商状态:
==========
微软已经得到了漏洞相关的信息正在处理,但还没有发布安全补丁,我们建议在安装官方补丁之前应用本通告的临时解决方法以降低漏洞的威胁:
http://blogs.technet.com/b/srd/archive/2010/06/10/help-and-support-center-vulnerability-full-disclosure-posting.aspx
http://www.microsoft.com/technet/security/advisory/2219475.mspx
附加信息:
==========
http://www.nsfocus.net/vulndb/15211
http://seclists.org/fulldisclosure/2010/Jun/205
http://www.microsoft.com/technet/security/advisory/2219475.mspx
声 明
==========
本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。