使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。


安装对应于 Microsoft .NET Framework 的 Microsoft 安全公告 MS14-009 的更新后,反射类型的封送处理在 DCOM 上可能无法按预期正常运行。此外,Microsoft Visual Studio 中的宏功能可能也无法按预期正常运行。

有关 MS14-009 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2916607 MS14-009:.NET Framework 中的漏洞可能允许特权提升:2014 年 2 月 11 日

症状

适用于 .NET Framework 的安全公告 MS14-009 将阻止反射类型的封送处理。阻止的类型包括以下几种以及由此派生的所有类型。

  • System.Type

  • System.Reflection.Assembly

  • System.Reflection.MemberInfo

  • System.Reflection.Module

  • System.Reflection.MethodBody

  • System.Reflection.ParameterInfo

  • System.Reflection.TypeInfo

  • System.Reflection.MethodInfo

  • System.Reflection.FieldInfo

原因

虽然大多数应用程序将不受此更改影响,但如果某个应用程序需要在 DCOM 上使用反射,您可以通过在 <Application>.exe.config 文件的 <runtime> 部分中添加 AllowDComReflection 配置开关来解决此限制,如下所示:


<?xml version ="1.0"?> <configuration> <runtime> <AllowDComReflection enabled="1"/> </runtime> </configuration>
设置此配置开关能使应用程序在 DCOM 上使用反射。

若要安全还原 Visual Studio 宏的功能,请根据系统中安装的 Visual Studio 版本更新以下应用程序配置文件之一。

版本

文件夹

文件名

Visual Studio 2005 Service Pack 1 (SP1)

\Program Files (x86)\Common Files\Microsoft Shared\VSA\8.0\VsaEnv

Vsmsvr.exe.config

Visual Studio 2008

\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv

Vsmsvr.exe.config

Visual Studio 2010

\Program Files (x86)\Common Files\Microsoft Shared\VSA\9.0\VsaEnv

Vsmsvr10.exe.config


注意 对于 32 位安装,路径位于 \Program Files\ 下。

对于所有受影响的 Visual Studio 版本,配置文件的修改过程均相同。您需要在 <runtime> 部分中添加 AllowDComReflection 开关,如下所示:


<AllowDComReflection enabled="1"/>
此更新会阻止反射类型离开托管代码,但未阻止它们进入托管代码。因此,在大多数情况下,您只需要在客户端设置配置开关。您应仅将此配置开关用于那些需要设置该开关的应用程序。

注意 您仍然应该保护服务器连接的安全。

保护端点安全

由于不受信任的端点可能在使用配置开关时提升自身的权限,因此您必须确保正在发送反射类型的端点能够信任到远程端点的连接。

有关一般 DCOM 安全配置的信息,请转到以下 Microsoft Developer Network (MSDN) 网站:

http://msdn.microsoft.com/zh-cn/library/windows/desktop/ms678426.aspx

有关适用于 Enterprise Services (COM+) 用户的信息,请转到以下 MSDN 网站:

http://msdn.microsoft.com/zh-cn/library/ms973847.aspx#entserv_topic6

本文中的信息适用于:

  • Microsoft .NET Framework 1.0 SP3

  • Microsoft .NET Framework 1.1 SP1

  • Microsoft .NET Framework 2.0 SP2

  • Microsoft .NET Framework 3.5

  • Microsoft .NET Framework 3.5 SP1

  • Microsoft .NET Framework 3.5.1

  • Microsoft .NET Framework 4

  • Microsoft .NET Framework 4.5

替代方法

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×