安装安全公告 MS14-009 中的安全更新后反射类型的封送处理可能无法在 DCOM 上正常工作

随时随地通过任何设备使用 Microsoft 365 工作

升级到 Microsoft 365 以在任何位置使用最新的功能和更新。

立即升级


安装对应于 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 内部人员

此信息是否有帮助?

谢谢您的反馈意见!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×