Microsoft 安全公告 MS15-101 - 重要

.NET Framework 中的漏洞可能允许提升权限(3089662)

发布时间: 2015 年 9 月 8 日 |更新时间:2016 年 2 月 9 日

版本: 1.2

执行摘要

此安全更新可解决 Microsoft .NET Framework 中的漏洞。 如果用户运行专门制作的 .NET 应用程序,则最严重的漏洞可能会允许提升特权。 但是,在所有情况下,攻击者都无法强制用户运行应用程序;攻击者必须说服用户这样做。

此安全更新对 Microsoft .NET Framework 2.0 Service Pack 2、Microsoft .NET Framework 3.5、Microsoft .NET Framework 3.5.1、Microsoft .NET Framework 4.5、Microsoft .NET Framework 4.5、Microsoft .NET Framework 4.5.1 和 Microsoft .NET Framework 4.5.2 的 Microsoft Windows 版本进行了分级。 有关详细信息,请参阅 “受影响的软件 ”部分。

安全更新通过更正 .NET Framework 在内存中复制对象的方式以及更正 .NET Framework 如何处理特制的请求来解决漏洞。 有关漏洞的详细信息,请参阅 特定漏洞的常见问题解答(常见问题解答) 子部分。

有关此更新的详细信息,请参阅 Microsoft 知识库文章3089662

受影响的软件和漏洞严重性分级

以下软件版本或版本受到影响。 未列出的版本或版本要么超过其支持生命周期,要么不受影响。 若要确定软件版本或版本的支持生命周期,请参阅Microsoft 支持部门生命周期

以下严重性分级假定漏洞的潜在最大影响。 有关此安全公告发布 30 天内漏洞的可利用性及其严重性评级和安全影响的信息,请参阅 9 月公告摘要中的“可利用性索引”。

操作系统 组件 .NET 特权提升漏洞 - CVE-2015-2504 MVC 拒绝服务漏洞 - CVE-2015-2526 已替换汇报
Windows Vista
Windows Vista Service Pack 2 Microsoft .NET Framework 2.0 Service Pack 2 重要 特权提升(3074541 不适用 3074541 - MS12-025 中的 2656374
Windows Vista Service Pack 2 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows Vista Service Pack 2 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
Windows Vista Service Pack 2 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
Windows Vista x64 版本 Service Pack 2 Microsoft .NET Framework 2.0 Service Pack 2 重要 特权提升(3074541 不适用 3074541 - MS12-025 中的 2656374
Windows Vista x64 版本 Service Pack 2 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows Vista x64 版本 Service Pack 2 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
Windows Vista x64 版本 Service Pack 2 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
Windows Server 2008
Windows Server 2008 for 32 位系统 Service Pack 2 Microsoft .NET Framework 2.0 Service Pack 2 重要 特权提升(3074541 不适用 3074541 - MS12-025 中的 2656374
Windows Server 2008 for 32 位系统 Service Pack 2 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows Server 2008 for 32 位系统 Service Pack 2 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
Windows Server 2008 for 32 位系统 Service Pack 2 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
基于 x64 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 2.0 Service Pack 2 重要 特权提升(3074541 不适用 3074541 - MS12-025 中的 2656374
基于 x64 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
基于 x64 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
基于 x64 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
基于 Itanium 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 2.0 Service Pack 2 重要 特权提升(3074541 不适用 3074541 - MS12-025 中的 2656374
基于 Itanium 的系统 Service Pack 2 的 Windows Server 2008 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows 7
Windows 7 for 32 位系统 Service Pack 1 Microsoft.NET Framework 3.5.1 重要 特权提升(3074543 不适用 3074543 - MS12-025 中的 2656373
Windows 7 for 32 位系统 Service Pack 1 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows 7 for 32 位系统 Service Pack 1 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
Windows 7 for 32 位系统 Service Pack 1 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
基于 x64 的系统 Service Pack 1 的 Windows 7 Microsoft.NET Framework 3.5.1 重要 特权提升(3074543 不适用 3074543 - MS12-025 中的 2656373
基于 x64 的系统 Service Pack 1 的 Windows 7 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
基于 x64 的系统 Service Pack 1 的 Windows 7 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
基于 x64 的系统 Service Pack 1 的 Windows 7 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
Windows Server 2008 R2
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft.NET Framework 3.5.1 重要 特权提升(3074543 不适用 3074543 - MS12-025 中的 2656373
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
适用于基于 Itanium 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft.NET Framework 3.5.1 重要 特权提升(3074543 不适用 3074543 - MS12-025 中的 2656373
适用于基于 Itanium 的系统 Service Pack 1 的 Windows Server 2008 R2 Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
Windows 8 和 Windows 8.1
适用于 32 位系统的 Windows 8 Microsoft .NET Framework 3.5 重要 特权提升(3074544 不适用 3074544 - 无
适用于 32 位系统的 Windows 8 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074229 重要 拒绝服务(3074549 3074229 - 无3074549 - 无
适用于 32 位系统的 Windows 8 Microsoft .NET Framework 4.6 重要 特权提升(3074552 重要 拒绝服务 (3074231 3074552 - 无3074231 - 无
基于 x64 的系统 Windows 8 Microsoft .NET Framework 3.5 重要 特权提升(3074544 不适用 3074544 - 无
基于 x64 的系统 Windows 8 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074229 重要 拒绝服务(3074549 3074229 - 无3074549 - 无
基于 x64 的系统 Windows 8 Microsoft .NET Framework 4.6 重要 特权提升(3074552 重要 拒绝服务 (3074231 3074552 - 无3074231 - 无
适用于 32 位系统的 Windows 8.1 Microsoft .NET Framework 3.5 重要 特权提升(3074545 不适用 3074545 - 无
适用于 32 位系统的 Windows 8.1 Microsoft .NET Framework 4.5.1/4.5.2 重要 特权提升(3074548 重要 拒绝服务(3074228 3074548 - 无3074228 - 无
适用于 32 位系统的 Windows 8.1 Microsoft .NET Framework 4.6 重要 特权提升(3074553 重要 拒绝服务 (3074232 3074553 - 无3074232 - 无
基于 x64 的系统版 Windows 8.1 Microsoft .NET Framework 3.5 重要 特权提升(3074545 不适用 3074545 - 无
基于 x64 的系统版 Windows 8.1 Microsoft .NET Framework 4.5.1/4.5.2 重要 特权提升(3074548 重要 拒绝服务(3074228 3074548 - 无3074228 - 无
基于 x64 的系统版 Windows 8.1 Microsoft .NET Framework 4.6 重要 特权提升(3074553 重要 拒绝服务 (3074232 3074553 - 无3074232 - 无
Windows Server 2012 和 Windows Server 2012 R2
Windows Server 2012 Microsoft .NET Framework 3.5 重要 特权提升(3074544 不适用 3074544 - 无
Windows Server 2012 Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074229 重要 拒绝服务(3074549 3074229 - 无3074549 - 无
Windows Server 2012 Microsoft .NET Framework 4.6 重要 特权提升(3074552 重要 拒绝服务 (3074231 3074552 - 无3074231 - 无
Windows Server 2012 R2 Microsoft .NET Framework 3.5 重要 特权提升(3074545 不适用 3074545 - 无
Windows Server 2012 R2 Microsoft .NET Framework 4.5.1/4.5.2 重要 特权提升(3074548 重要 拒绝服务(3074228 3074548 - 无3074228 - 无
Windows Server 2012 R2 Microsoft .NET Framework 4.6 重要 特权提升(3074553 重要 拒绝服务 (3074232 3074553 - 无3074232 - 无
Windows RT 和 Windows RT 8.1
Windows RT Microsoft .NET Framework 4.5/4.5.1/4.5.2[2] 重要 特权提升(3074229) 重要 拒绝服务(3074549) 3074229 - 无3074549 - 无
Windows RT Microsoft .NET Framework 4.6[2] 重要 特权提升(3074552) 重要 拒绝服务(3074231) 3074552 - 无3074231 - 无
Windows RT 8.1 Microsoft .NET Framework 4.5.1/4.5.2[2] 重要 特权提升(3074548) 重要 拒绝服务(3074228) 3074548 - 无3074228 - 无
Windows RT 8.1 Microsoft .NET Framework 4.6[2] 重要 特权提升(3074553) 重要 拒绝服务(3074232) 3074553 - 无3074232 - 无
Windows 10
Windows 10 for 32 位系统[3] Microsoft .NET Framework 3.5 重要 特权提升(3081455 不适用 3081444
Windows 10 for 32 位系统[3] Microsoft .NET Framework 4.6 重要 特权提升(3081455 重要 拒绝服务(3081455 3081444
基于 x64 的系统 Windows 10[3] Microsoft .NET Framework 3.5 重要 特权提升(3081455 不适用 3081444
基于 x64 的系统 Windows 10[3] Microsoft .NET Framework 4.6 重要 特权提升(3081455 重要 拒绝服务(3081455 3081444
服务器核心安装选项
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 (服务器核心安装) Microsoft.NET Framework 3.5.1 重要 特权提升(3074543 不适用 3074543 - MS12-025 中的 2656373
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 (服务器核心安装) Microsoft .NET Framework 4[1] 重要 特权提升(3074547 不适用 3074547 - MS12-025 中的 2656368
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 (服务器核心安装) Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074550 重要 拒绝服务(3074230 3074550 - 无3074230 - 无
基于 x64 的系统 Service Pack 1 的 Windows Server 2008 R2 (服务器核心安装) Microsoft .NET Framework 4.6 重要 特权提升(3074554 重要 拒绝服务 (3074233 3074554 - 无3074233 - 无
Windows Server 2012 (服务器核心安装) Microsoft .NET Framework 3.5 重要 特权提升(3074544 不适用 3074544 - 无
Windows Server 2012 (服务器核心安装) Microsoft .NET Framework 4.5/4.5.1/4.5.2 重要 特权提升(3074229 重要 拒绝服务(3074549 3074229 - 无3074549 - 无
Windows Server 2012 (服务器核心安装) Microsoft .NET Framework 4.6 重要 特权提升(3074552 重要 拒绝服务 (3074231 3074552 - 无3074231 - 无
Windows Server 2012 R2 (服务器核心安装) Microsoft .NET Framework 3.5 重要 特权提升(3074545 不适用 3074545 - 无
Windows Server 2012 R2 (服务器核心安装) Microsoft .NET Framework 4.5.1/4.5.2 重要 特权提升(3074548 重要 拒绝服务(3074228 3074548 - 无3074228 - 无
Windows Server 2012 R2 (服务器核心安装) Microsoft .NET Framework 4.6 重要 特权提升(3074553 重要 拒绝服务 (3074232 3074553 - 无3074232 - 无

[1].受影响的 NET Framework 4 和 .NET Framework 4 客户端配置文件。

[2]此更新只能通过Windows 更新获取

[3]Windows 10 更新是累积更新。 除了包含非安全更新之外,它还包含本月安全版本随附的所有 Windows 10 受影响的漏洞的所有安全修补程序。 有关详细信息和下载链接,请参阅 Microsoft 知识库文章3081455

请注意 ,Windows Server Technical Preview 2 受到影响。 鼓励运行此操作系统的客户应用可通过Windows 更新获取的更新。

更新常见问题解答

如何实现确定安装了哪个版本的 Microsoft .NET Framework?
可以在系统上安装和运行多个版本的 .NET Framework,并且可以按任意顺序安装版本。 有关详细信息,请参阅 Microsoft 知识库文章318785

.NET Framework 4 和 .NET Framework 4 客户端配置文件之间的区别是什么?
.NET Framework 版本 4 可再发行包在两个配置文件中可用:.NET Framework 4 和 .NET Framework 4 客户端配置文件。 .NET Framework 4 客户端配置文件是针对客户端应用程序优化的 .NET Framework 4 配置文件的子集。 它为大多数客户端应用程序提供功能,包括 Windows Presentation Foundation(WPF)、Windows 窗体、Windows Communication Foundation (WCF)和 ClickOnce 功能。 这为面向 .NET Framework 4 客户端配置文件的应用程序启用更快的部署和更小的安装包。 有关详细信息,请参阅 MSDN 文章 .NET Framework 客户端配置文件。 

有多个更新包可用于某些受影响的软件。 是否需要为软件安装受影响的软件表中列出的所有更新?
是的。 客户应应用为其系统上安装的软件提供的所有更新。

是否需要在特定序列中安装这些安全更新?
否。 可以按任意顺序应用给定系统的多个更新。

漏洞信息

.NET 特权提升漏洞 - CVE-2015-2504

.NET Framework 在将这些对象复制到数组之前验证内存中的对象数的方式存在特权提升漏洞。 成功利用此漏洞的攻击者可以控制受影响的系统。 然后,攻击者可能会安装程序、查看更改项或删除数据,还可能会使用完全用户权限创建新的帐户。 与使用管理用户权限操作的用户相比,其帐户在系统上具有更少用户权限的用户更不易受到影响。

有两种攻击方案可用于利用此漏洞:Web 浏览方案和 Windows .NET 应用程序绕过代码访问安全性(CAS)限制。 这些方案如下所述:

  • Web 浏览攻击方案 攻击者可以托管一个专门制作的网站,其中包含一个专门制作的 XBAP (XAML 浏览器应用程序),以利用此漏洞,然后说服用户查看网站。 攻击者还可以利用遭到入侵的网站和接受或托管用户提供的内容或广告的网站。 但是,在所有情况下,攻击者都无法强制用户访问这些网站。 相反,攻击者必须说服用户访问该网站,通常是让他们单击即时信使或电子邮件中的链接,将用户带到攻击者的网站。 还可以通过使用横幅广告或其他方法向受影响的系统传送 Web 内容来显示特制的 Web 内容。
  • Windows .NET 应用程序攻击方案 此漏洞还可供 Windows .NET Framework 应用程序用于绕过代码访问安全性(CAS)限制。

有两种类型的系统存在风险,如下所示:

  • Web 浏览方案 成功利用此漏洞需要用户使用能够实例化 XBAP 的 Web 浏览器登录和访问网站。 因此,经常使用 Web 浏览器的任何系统(例如工作站或终端服务器)都面临此漏洞的最大风险。 如果管理员允许用户浏览和读取服务器上的电子邮件,服务器可能会面临更大的风险。 但是,最佳做法强烈建议不要允许这样做。
  • 运行不受信任的 Windows .NET Framework 应用程序的 Windows .NET 应用程序 工作站和服务器也面临此漏洞的风险。

此更新通过更正 .NET Framework 在内存中复制对象的方式来解决漏洞。 此漏洞已公开披露。 它已分配了常见漏洞和公开号码 CVE-2015-2504。 最初发布此公告时,Microsoft 不知道任何试图利用此漏洞的攻击。

缓解因素

Microsoft 尚未识别此漏洞的任何 缓解因素

解决方法

Microsoft 尚未识别此漏洞的任何 解决方法

MVC 拒绝服务漏洞 - CVE-2015-2526

当 .NET 无法正确处理某些特制请求时,就存在拒绝服务漏洞。 成功利用此漏洞的攻击者可能会向 ASP.NET 服务器发送少量特制请求,从而导致性能明显下降,导致拒绝服务条件。

攻击者可以使用此漏洞来创建拒绝服务攻击,并中断使用 ASP.NET 的网站的可用性。 安装了 ASP.NET 面向 Internet 的系统主要面临此漏洞的风险。 使用 ASP.NET 的内部网站也可能面临此漏洞的风险。 该更新通过更正 .NET Framework 如何处理特制的请求来解决漏洞。

Microsoft 通过协调的漏洞泄露收到了有关此漏洞的信息。 发布此安全公告时,Microsoft 未收到任何信息,表明此漏洞已公开用于攻击客户。

缓解因素

Microsoft 尚未识别此漏洞的任何 缓解因素

解决方法

Microsoft 尚未识别此漏洞的任何 解决方法

安全更新部署

有关安全更新部署信息,请参阅“执行摘要”中引用的 Microsoft 知识库文章。

致谢

Microsoft 认识到安全社区中那些帮助我们通过协调漏洞披露来保护客户的努力。 有关详细信息,请参阅确认。  

免责声明

Microsoft 知识库中提供的信息“按原样”提供,不提供任何形式的担保。 Microsoft 不明确或暗示所有保证,包括适销性和针对特定用途的适用性和适用性的保证。 在任何情况下,Microsoft Corporation 或其供应商都应对任何损害负责,包括直接、间接、附带、后果性、业务利润损失或特殊损害,即使 Microsoft Corporation 或其供应商被告知存在此类损害的可能性。 某些州不允许排除或限制后果性或附带性损害的责任,因此上述限制可能不适用。

修订

  • V1.0(2015 年 9 月 8 日):公告已发布。
  • V1.1(2015 年 9 月 25 日):从受影响的软件表脚注中删除了 Windows Server Technical Preview 3,因为它不受此安全公告中所述的漏洞的影响。 这只是一项信息性更改。 已成功更新其系统的客户无需采取任何操作。
  • V1.2(2016 年 2 月 9 日):修订后的公告,宣布对 .NET Framework 4.6 的3074554更新进行检测更改。 这只是一项信息性更改。 已成功更新其系统的客户无需采取任何操作。

页面生成的 2016-02-04 11:08-08:00。