Po zainstalowaniu aktualizacji odpowiadającej biuletynowi zabezpieczeń firmy Microsoft MS14-009 dla programu Microsoft .NET Framework kierowanie typów odbić za pośrednictwem modelu DCOM może nie działać zgodnie z oczekiwaniami. Ponadto funkcja obsługi makr w programie Microsoft Visual Studio może nie działać zgodnie z oczekiwaniami.
Aby uzyskać więcej informacji na temat biuletynu MS14-009, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
2916607 MS14-009: Luki w zabezpieczeniach programu .NET Framework umożliwiają podniesienie uprawnień: 11 lutego 2014
Symptomy
Biuletyn zabezpieczeń MS14-009 dla programu .NET Framework blokuje kierowanie typów odbić. Blokowane są następujące typy oraz typy od nich pochodne.
-
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
Przyczyna
Na większość aplikacji ta zmiana nie ma wpływu, jeśli jednak aplikacja musi korzystać z odbicia za pośrednictwem modelu DCOM, można obejść to ograniczenie, dodając przełącznik konfiguracji AllowDComReflection w sekcji <runtime> pliku <aplikacja>.exe.config w ten sposób:
<?xml version ="1.0"?> <configuration> <runtime> <AllowDComReflection enabled="1"/> </runtime> </configuration>
Ustawienie tego przełącznika konfiguracji umożliwi aplikacji korzystanie z odbicia przez model DCOM.
Aby w bezpieczny sposób przywrócić funkcję obsługi makr w programie Visual Studio, należy zaktualizować jeden z następujących plików konfiguracji (stosownie do zainstalowanej w systemie wersji programu Visual Studio).
Wersja |
Folder |
Nazwa pliku |
---|---|---|
Visual Studio 2005 z dodatkiem 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 |
Uwaga W instalacjach 32-bitowych odpowiednia ścieżka znajduje się w folderze \Program Files\.
Modyfikacja pliku konfiguracji przebiega tak samo we wszystkich dotkniętych problemem wersjach programu Visual Studio. Przełącznik AllowDComReflection należy dodać w sekcji <runtime> w następujący sposób:
<AllowDComReflection enabled="1"/>
Ta aktualizacja blokuje opuszczanie przez typy odbić kodu zarządzanego, ale nie blokuje przechodzenia przez nie do tego kodu. Dlatego w większości przypadków wystarczy ustawić przełącznik konfiguracji po stronie klienta. Stosowanie tego przełącznika konfiguracji należy ograniczyć do aplikacji, w przypadku których jest on niezbędny.
Uwaga Nadal należy zabezpieczać połączenie z serwerem.
Zabezpieczanie punktów końcowych
Ze względu na to, że niezaufane punkty końcowe mogą być w stanie podnieść swoje uprawnienia w razie użycia tego przełącznika konfiguracji, należy się upewnić, że punkt końcowy wysyłający typy odbić może zaufać połączeniu ze zdalnym punktem końcowym.
Aby uzyskać informacje o ogólnej konfiguracji zabezpieczeń modelu DCOM, odwiedź następującą stronę witryny MSDN (Microsoft Developer Network) w sieci Web:
http://msdn.microsoft.com/pl-pl/library/windows/desktop/ms678426.aspx
Aby uzyskać informacje dla użytkowników usług dla przedsiębiorstw (Enterprise Services, COM+), odwiedź następującą stronę witryny MSDN w sieci Web:
http://msdn.microsoft.com/pl-pl/library/ms973847.aspx#entserv_topic6
Informacje zamieszczone w tym artykule dotyczą:
-
Microsoft .NET Framework 1.0 z dodatkiem SP3
-
Microsoft .NET Framework 1.1 z dodatkiem SP1
-
Microsoft .NET Framework 2.0 z dodatkiem SP2
-
Microsoft .NET Framework 3.5
-
Microsoft .NET Framework 3.5 z dodatkiem SP1
-
Microsoft .NET Framework 3.5.1
-
Microsoft .NET Framework 4
-
Microsoft .NET Framework 4.5