Visual Basic for Applications 中的漏洞可能允许远程代码执行(2707960)
发布时间: 2012 年 7 月 10 日 |更新时间:2012 年 11 月 13 日
版本: 2.0
常规信息
执行摘要
此安全更新解决了 Microsoft Visual Basic for Applications 中公开披露的漏洞。 如果用户打开合法Microsoft 办公室文件(如.docx文件),该漏洞可能允许远程代码执行,该文件位于与专门制作的动态链接库 (DLL) 文件位于同一目录中。 然后,攻击者可以安装程序;查看、更改或删除数据;或创建具有完全用户权限的新帐户。 如果用户使用管理用户权限登录,攻击者可以完全控制受影响的系统。 与使用管理用户权限操作的用户相比,其帐户在系统上具有更少用户权限的用户更不易受到影响。
对于所有受支持的 Microsoft Visual Basic for Applications SDK 版本以及使用 Microsoft Visual Basic for Applications 的第三方应用程序,此安全更新都被评为“重要”。 此安全更新还针对 Microsoft 办公室 2003 SP3、Microsoft 办公室 2007 SP2 和 Microsoft 办公室 2010 的所有受支持版本都被评为“重要”。 有关详细信息,请参阅本节中的小节“ 受影响的和非受影响的软件”。
安全更新通过更正 Microsoft Visual Basic for Applications 加载外部库的方式来解决漏洞。 有关漏洞的详细信息,请参阅下一部分 “漏洞信息”下特定漏洞条目的常见问题解答(常见问题解答)子部分。
建议。 客户可以使用 Microsoft 更新服务将自动更新配置为联机检查更新。 启用了自动更新并配置为联机检查 Microsoft 更新的客户通常无需采取任何操作,因为将自动下载并安装此安全更新。 未启用自动更新的客户需要从 Microsoft 更新检查更新并手动安装此更新。 有关 Windows XP 和 Windows Server 2003 支持版本中自动更新的特定配置选项的信息,请参阅 Microsoft 知识库文章294871。 有关 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2 支持的版本中自动更新的信息,请参阅 了解 Windows 自动更新。
对于管理员和企业安装,或想要手动安装此安全更新的最终用户,Microsoft 建议客户尽早使用更新管理软件应用更新,或者检查使用 Microsoft 更新服务进行更新。
[1]这些Microsoft 办公室更新适用于所有受支持的Microsoft 办公室套件和其他包含易受攻击的共享办公室组件Microsoft 办公室软件。 这些内容包括但不限于受支持的 Microsoft Visio 和 Microsoft Project 版本。 有关详细信息,请参阅下一部分, 有关此安全更新的常见问题解答(常见问题解答)。
[2]尽管重新发布的更新(知识库(KB)2687626)取代了 Microsoft 办公室 2003 Service Pack 3 的原始更新(知识库(KB)2598361),但成功安装知识库(KB)2598361更新的客户无需安装知识库(KB)2687626更新。 有关详细信息,请参阅更新常见问题解答。
[1]此更新包适用于 Microsoft Visual Basic for Applications 运行时(Vbe6.dll)支持的版本,并且仅适用于 Microsoft 下载中心。
[2]VBA SDK 支持的版本是 Microsoft Visual Basic for Applications SDK 6.3、Microsoft Visual Basic for Applications SDK 6.4 和 Microsoft Visual Basic for Applications SDK 6.5。
[3]针对本公告中所述漏洞的 Visual Basic for Applications SDK 的更新版本适用于峰会软件公司的独立软件供应商(ISV)。 有关详细信息,请参阅下一部分, 有关此安全更新的常见问题解答(常见问题解答)。
受影响的软件
办公室和其他软件
Microsoft Office 2008 for Mac
Microsoft Office for Mac 2011
Microsoft 办公室 Compatibility Pack Service Pack 2 和 Microsoft 办公室 Compatibility Pack Service Pack 3
Microsoft Excel Viewer
Microsoft Word Viewer
Microsoft PowerPoint Viewer
Microsoft Visio Viewer 2010 和 Microsoft Visio Viewer 2010 Service Pack 1
与此安全更新相关的常见问题(常见问题解答)
为什么此公告于 2012 年 11 月 13 日修订?
Microsoft 重新发布此公告,将知识库(KB)2598361更新替换为 Microsoft 办公室 2003 Service Pack 3 的知识库(KB)2687626更新,以解决涉及 Microsoft 生成且没有正确时间戳属性的特定数字证书的问题。 有关详细信息,请参阅 Microsoft 安全公告2749655。
尽管重新发布的更新(知识库(KB)2687626)取代了 Microsoft 办公室 2003 Service Pack 3 的原始更新(知识库(KB)2598361),但成功安装知识库(KB)2598361更新的客户无需安装知识库(KB)2687626更新。
我已成功安装 Microsoft 办公室 2003 的原始知识库(KB)2598361更新。是否需要应用 2012 年 11 月 13 日发布的重新发布的更新包(知识库(KB)2687626) ?
否。 重新发布的更新(知识库(KB)2687626)仅适用于未安装原始更新(知识库(KB)2598361)Microsoft 办公室 2003 运行的系统。 已成功安装 Microsoft 办公室 2003 Service Pack 3 的原始知识库(KB)2598361更新的客户无需采取任何操作。 此外,如果原始更新(知识库(KB)2598361)已安装在其系统上,则不会向客户提供重新发布的更新(知识库(KB)2687626)。
请注意,如果已安装知识库(KB)2598361更新,然后在同一系统上安装知识库(KB)2687626更新,安装程序将生成一条消息,指出更新已安装。 生成消息后,知识库(KB)2687626更新将替换已安装更新列表中的知识库(KB)2598361更新。 有关此安装行为的详细信息,请参阅 Microsoft 知识库文章2707960。
此更新是否与 Microsoft 安全咨询2269637相关?
是的,此更新解决的 Visual Basic for Applications 不安全库加载漏洞(CVE-2012-1854)与 Microsoft 安全公告2269637中所述的漏洞类相关,这些漏洞会影响应用程序加载外部库的方式。 此安全更新解决了此类漏洞的特定实例。
为什么多个包更新可用于 Microsoft 办公室 2010 和 Microsoft 办公室 2010 Service Pack 1?
由于 Microsoft 办公室 2010 Microsoft 办公室组件化服务模型,此公告中所述解决此公告中所述的漏洞所需的更新适用于不同的包更新。 若要从漏洞中保护,这两个更新是必需的,但不需要按特定顺序安装它们。
文件信息详细信息在哪里?
有关文件信息详细信息的位置,请参阅“安全更新部署”部分中的参考表。
安全更新的哈希在哪里?
可以使用安全更新的 SHA1 和 SHA2 哈希来验证下载的安全更新包的真实性。 有关此更新的哈希信息,请参阅 Microsoft 知识库文章2707960。
我应用了所需的 Microsoft 安全更新,但我在系统上仍具有 Visual Basic for Applications 运行时(VBE6.dll)受影响的版本。 如何实现更新此 DLL?
在某些情况下,即使安装了Microsoft 办公室所需的安全更新以及本公告中列出的 Microsoft Visual Basic for Applications 更新,系统仍可能仍具有受影响的VBE6.dll版本。
如果VBE6.dll由受支持的 Microsoft 办公室 版本安装在系统上,则应用受影响版本的Microsoft 办公室的安全更新会将VBE6.dll替换为解决本公告中所述漏洞的更新版本。 但是,如果第三方应用程序在系统上安装了VBE6.dll,则可能需要为该程序安装更新。
若要更新第三方应用程序的VBE6.dll,有两种可能的方案取决于第三方应用程序的 VBA 实现。 如果知道第三方应用程序符合使用共享组件作为并行程序集的建议最佳做法,则应用 Microsoft Visual Basic for Applications (知识库(KB)2688865) 更新会将共享位置中的VBE6.dll替换为解决本公告中所述漏洞的更新版本。
此安全更新仅适用于 Microsoft 软件。 如何检测第三方应用程序是否已在系统上部署受影响的 Visual Basic for Applications 运行时 (VBE6.dll) 版本?
支持 VBA 的第三方应用程序可以在此安全更新未更新的位置部署VBE6.dll。 如果确实具有附带其自己的VBE6.dll副本的第三方应用程序,以帮助确保系统完全免受本公告中所述的漏洞的保护,则应直接与负责支持第三方应用程序的开发人员或供应商联系。
有关如何扫描系统上VBE6.dll副本的详细信息,请参阅 Microsoft 知识库文章978213。 扫描系统上VBE6.dll的所有副本有助于识别可能由第三方应用程序安装的潜在易受攻击的副本。
我是第三方软件开发者,我在应用程序中使用 Microsoft Visual Basic for Applications 运行时。我的应用程序是否易受攻击,以及如何对其进行更新?
重新分发 Microsoft Visual Basic for Applications 运行时VBE6.dll的开发人员应从 Summit Software Company 下载 Microsoft Visual Basic for Applications SDK 的更新版本。 然后,使用更新后的 VBA 运行时更新应用程序安装程序。 有关重新分发组件使用的最佳做法的详细信息,请参阅 Microsoft 知识库文章835322 和 MSDN 文章、 独立应用程序和并行程序集。
我是一个 ISV。 Microsoft Visual Basic for Applications SDK 的更新在哪里?
该更新可从 峰会软件公司获取。 Summit Software Company 是应用程序自定义软件产品和集成支持服务的全球供应商,面向独立软件供应商(ISV)和企业开发人员。 1996年6月,Summit Software 与 Microsoft 达成协议,销售 Microsoft Visual Basic for Applications 和相关增值技术和服务。 峰会继续销售和支持 Microsoft VBA。
如何Microsoft 办公室受漏洞影响的独立程序?
Microsoft 办公室独立程序受到与Microsoft 办公室套件中相应组件的相同严重性分级的影响。 例如,Microsoft Excel 的独立安装与随 Microsoft 办公室 Suite 一起交付的 Microsoft Excel 安装时,其严重性评级与安装相同。
我使用的是此安全公告中讨论的软件的较旧版本。 应采取何种操作?
此公告中列出的受影响的软件已经过测试,以确定哪些版本受到影响。 其他版本已超过其支持生命周期。 有关产品生命周期的详细信息,请访问 Microsoft 支持部门 生命周期网站。
对于具有较旧版本的软件的客户来说,这应该是一个优先事项,可以迁移到受支持的版本,以防止潜在的漏洞暴露。 若要确定软件版本的支持生命周期,请参阅 “选择产品生命周期信息”。 有关这些软件版本的 Service Pack 的详细信息,请参阅 Service Pack 生命周期支持策略。
需要旧版软件自定义支持的客户必须联系其 Microsoft 帐户团队代表、其技术客户经理或相应的 Microsoft 合作伙伴代表以获取自定义支持选项。 没有联盟、顶级或授权合同的客户可以与其当地的 Microsoft 销售办公室联系。 有关联系信息,请访问 Microsoft 全球信息网站,在“联系信息”列表中选择国家/地区,然后单击“转到”以查看电话号码列表。 呼叫时,请与当地顶级支持销售经理交谈。 有关详细信息,请参阅Microsoft 支持部门生命周期策略常见问题解答。
Visual Basic for Applications 不安全库加载漏洞 - CVE-2012-1854
聚合严重性分级
办公室套件
Microsoft 办公室 2003 Service Pack 3
重要的 远程代码执行
重要说明
Microsoft 办公室 2007 Service Pack 2
重要的 远程代码执行
重要说明
Microsoft 办公室 2007 Service Pack 3
重要的 远程代码执行
重要说明
Microsoft 办公室 2010 (32 位版本)
重要的 远程代码执行
重要说明
Microsoft 办公室 2010 Service Pack 1 (32 位版本)
重要的 远程代码执行
重要说明
Microsoft 办公室 2010 (64 位版本)
重要的 远程代码执行
重要说明
Microsoft 办公室 2010 Service Pack 1 (64 位版本)
重要的 远程代码执行
重要说明
开发人员工具
Microsoft Visual Basic for Applications[1]
重要的 远程代码执行
重要说明
Microsoft Visual Basic for Applications SDK[2]
重要的 远程代码执行
重要说明
[1]此更新包适用于 Microsoft Visual Basic for Applications 运行时(Vbe6.dll)支持的版本,并且仅适用于 Microsoft 下载中心。
[2]VBA SDK 支持的版本是 Microsoft Visual Basic for Applications SDK 6.3、Microsoft Visual Basic for Applications SDK 6.4 和 Microsoft Visual Basic for Applications SDK 6.5。
Visual Basic for Applications 不安全库加载漏洞 - CVE-2012-1854
Microsoft Visual Basic for Applications 处理 DLL 文件的加载的方式存在远程代码执行漏洞。 成功利用此漏洞的攻击者可以完全控制受影响的系统。 然后,攻击者可能会安装程序、查看更改项或删除数据,还可能会使用完全用户权限创建新的帐户。 与使用管理用户权限操作的用户相比,其帐户在系统上具有更少用户权限的用户更不易受到影响。
Visual Basic for Applications 不安全库加载漏洞的解决方法 - CVE-2012-1854
解决方法是指未更正基础漏洞的设置或配置更改,但有助于在应用更新之前阻止已知的攻击途径。 Microsoft 在讨论解决方法是否减少功能时测试了以下解决方法和状态:
禁用从 WebDAV 和远程网络共享加载库
请注意 ,请参阅 Microsoft 知识库文章2264107 部署一种解决方法工具,使客户能够禁用从远程网络或 WebDAV 共享加载库。 此工具可配置为禁止在每应用程序或全局系统上进行不安全加载。
供应商告知易受攻击的应用程序的客户可以使用此工具来帮助防止尝试利用此问题。
请注意 ,请参阅 Microsoft 知识库文章2264107 使用自动 Microsoft 修复解决方案 部署注册表项,以阻止加载 SMB 和 WebDAV 共享的库。 请注意,此修复解决方案确实需要安装 Microsoft 知识库文章2264107中所述的解决方法工具。 此修补程序解决方案仅部署注册表项,并且需要解决方法工具才能生效。 建议管理员在部署此修复解决方案之前仔细查看知识库(KB)文章。
禁用 WebClient服务
禁用 WebClient 服务有助于通过 Web 分布式创作和版本控制(WebDAV)客户端服务阻止最有可能的远程攻击途径,防止受影响的系统尝试利用此漏洞。 应用此解决方法后,成功利用此漏洞的远程攻击者可能会导致系统运行位于目标用户计算机或局域网(LAN)上的程序。 但是,在从 Internet 打开任意程序之前,系统会提示用户进行确认。
若要禁用 WebClient 服务,请执行以下步骤:
单击“开始”,单击“运行”,键入 Services.msc,然后单击“确定”。
右键单击 WebClient 服务并选择“ 属性”。
将启动类型更改为 “已禁用”。 如果服务正在运行,请单击“ 停止”。
单击“确定”并退出管理应用程序。
解决方法的影响。 禁用 WebClient 服务后,不会传输 Web 分布式创作和版本控制(WebDAV)请求。 此外,显式依赖于 Web 客户端服务的任何服务都不会启动,系统日志中将记录错误消息。 例如,可从客户端计算机访问 WebDAV 共享。
如何撤消解决方法。
若要重新启用 WebClient 服务,请执行以下步骤:
单击“开始”,单击“运行”,键入 Services.msc,然后单击“确定”。
右键单击 WebClient 服务并选择“ 属性”。
将启动类型更改为 “自动”。 如果服务未运行,请单击“ 启动”。
单击“确定”并退出管理应用程序。
阻止防火墙上的 TCP 端口 139 和 445
这些端口用于启动与受影响组件的连接。 阻止防火墙上的 TCP 端口 139 和 445 将有助于保护防火墙后面的系统免受攻击此漏洞的尝试。 Microsoft 建议阻止来自 Internet 的所有未经请求的入站通信,以帮助防止可能使用其他端口的攻击。 有关端口的详细信息,请参阅 TechNet 文章、 TCP 和 UDP 端口分配。
解决方法的影响。 多个 Windows 服务使用受影响的端口。 阻止与端口的连接可能会导致各种应用程序或服务无法正常工作。 下面是一些可能影响的应用程序或服务的列表:
Visual Basic for Applications 不安全库加载漏洞常见问题解答 - CVE-2012-1854
漏洞的范围是什么?
这是 Microsoft Visual Basic for Applications(VBA)中的远程代码执行漏洞。
导致漏洞的原因是什么?
当 Microsoft Visual Basic for Applications 错误地限制用于加载外部库的路径时,会导致漏洞。
什么是 Visual Basic for Applications(VBA)?
Microsoft VBA 是一种开发技术,用于开发客户端桌面打包的应用程序并将其与现有数据和系统集成。 Microsoft VBA 基于 Microsoft Visual Basic 开发系统。 Microsoft 办公室产品包括 VBA,并使用 VBA 执行某些功能。 VBA 还可用于基于现有主机应用程序生成自定义应用程序。
Microsoft 更新和Windows 更新提供安全更新。 Microsoft 下载中心也提供了安全更新。 可以通过执行关键字 (keyword)搜索“安全更新”来最轻松地找到它们。
对于 Microsoft 办公室 for Mac 的客户,Microsoft AutoUpdate for Mac 可以帮助使 Microsoft 软件保持最新。 有关使用 Microsoft AutoUpdate for Mac 的详细信息,请参阅 自动检查软件更新。
最后,可以从 Microsoft 更新目录下载安全更新。 Microsoft 更新目录提供通过Windows 更新和 Microsoft 更新提供的内容的可搜索目录,包括安全更新、驱动程序和服务包。 使用安全公告编号(如“MS07-036”)进行搜索,可以将所有适用的更新添加到篮子(包括更新的不同语言),并下载到所选文件夹。 有关 Microsoft 更新目录的详细信息,请参阅 Microsoft 更新目录常见问题解答。
检测和部署指南
Microsoft 提供安全更新的检测和部署指南。 本指南包含建议和信息,可帮助 IT 专业人员了解如何使用各种工具来检测和部署安全更新。 有关详细信息,请参阅 Microsoft 知识库文章961747。
Microsoft 基准安全分析器
Microsoft 基线安全分析器(MBSA)允许管理员扫描本地和远程系统,了解缺少安全更新以及常见的安全配置错误。 有关 MBSA 的详细信息,请访问 Microsoft 基线安全分析器。
下表提供了此安全更新的 MBSA 检测摘要。
软件
MBSA
Microsoft 办公室 2003 Service Pack 3
是
Microsoft 办公室 2007 Service Pack 2 和 Microsoft 办公室 2007 Service Pack 3
是
Microsoft 办公室 2010 和 Microsoft 办公室 2010 Service Pack 1 (32 位版本)
是
Microsoft 办公室 2010 和 Microsoft 办公室 2010 Service Pack 1 (64 位版本)
是
Microsoft Visual Basic for Applications
否
注意 :对于使用 MBSA、Microsoft Update 和 Windows Server Update Services 最新版本不支持的旧版软件的客户,请访问 Microsoft 基线安全分析器 并参考旧版产品支持部分,了解如何使用旧工具创建全面的安全更新检测。
Windows Server Update Services
Windows Server Update Services (WSUS)使信息技术管理员能够将最新的 Microsoft 产品更新部署到运行 Windows 操作系统的计算机。 有关如何使用 Windows Server Update Services 部署安全更新的详细信息,请参阅 TechNet 文章 Windows Server Update Services。
系统管理服务器
下表提供了此安全更新的短信检测和部署摘要。
软件
使用 ITMU 的 SMS 2003
System Center Configuration Manager
Microsoft 办公室 2003 Service Pack 3
是
是
Microsoft 办公室 2007 Service Pack 2 和 Microsoft 办公室 2007 Service Pack 3
是
是
Microsoft 办公室 2010 和 Microsoft 办公室 2010 Service Pack 1 (32 位版本)
是
是
Microsoft 办公室 2010 和 Microsoft 办公室 2010 Service Pack 1 (64 位版本)
有关受支持的 Microsoft 办公室 XP 版本,请参阅“创建管理员安装点”。 有关如何将客户端系统的源从更新的管理安装点更改为 办公室 XP 原始基线源的详细信息,请参阅 Microsoft 知识库文章922665。 请注意,如果计划从更新的管理映像集中管理软件更新,可以在文章中查找从修补管理员映像更新 办公室 XP 客户端的详细信息。
华为安全实验室的 Bai Haowen 报告 Visual Basic for Applications 不安全库加载漏洞(CVE-2012-1854)
Microsoft Active Protections 计划 (MAPP)
为了改善客户的安全保护,Microsoft 在每月安全更新发布之前向主要安全软件提供商提供漏洞信息。 然后,安全软件提供商可以使用此漏洞信息通过其安全软件或设备(如防病毒、基于网络的入侵检测系统或基于主机的入侵防护系统)为客户提供更新的保护。 若要确定安全软件提供商是否提供主动保护,请访问计划合作伙伴提供的活动保护网站,这些网站在 Microsoft Active Protections 计划 (MAPP) 合作伙伴中列出。
Microsoft 知识库中提供的信息“按原样”提供,不提供任何形式的担保。 Microsoft 不明确或暗示所有保证,包括适销性和针对特定用途的适用性和适用性的保证。 在任何情况下,Microsoft Corporation 或其供应商都应对任何损害负责,包括直接、间接、附带、后果性、业务利润损失或特殊损害,即使 Microsoft Corporation 或其供应商被告知存在此类损害的可能性。 某些州不允许排除或限制后果性或附带性损害的责任,因此上述限制可能不适用。
修订
V1.0(2012 年 7 月 10 日):公告已发布。
V2.0(2012 年 11 月 13 日):重新发布的公告,将 知识库(KB)2598361 更新替换为 Microsoft 办公室 2003 Service Pack 3 知识库(KB)2687626更新,以解决 Microsoft 安全公告2749655中所述的数字证书的问题。 有关详细信息,请参阅更新常见问题解答。