요약
이 Microsoft .NET Framework용 보안 업데이트는 Microsoft.NET Framework(및 .NET Core) 구성 요소가 인증서의 유효성을 완전하게 검사하지 못하는 보안 기능 우회 취약성을 해결합니다. 이 취약성에 대해 자세히 알아보려면 Microsoft의 일반적인 취약성 및 노출 CVE-2017-0248을 참조하십시오.
이 업데이트에는 SHA256 해시 알고리즘을 사용하여 패키지에 서명을 하는 Windows Presentation Framework PackageDigitalSignatureManager 구성 요소 기능의 보안을 개선하는 픽스도 포함되어 있습니다.
중요
-
이 업데이트를 설치한 후에 언어 팩을 설치하는 경우 이 업데이트를 다시 설치해야 합니다. 따라서 이 업데이트를 설치하기 전에 필요한 모든 언어 팩을 설치하는 것이 좋습니다. 자세한 내용은 Windows에 언어 팩 추가를 참조하십시오.
이 보안 업데이트에 대한 추가 정보
경고
레지스트리 편집기나 다른 방법을 사용하여 레지스트리를 잘못 수정하면 심각한 문제가 발생할 수 있습니다. 이러한 문제를 해결하기 위해 운영 체제를 다시 설치해야 할 수도 있습니다. Microsoft는 이러한 문제에 대해 해결을 보증하지 않습니다. 레지스트리 수정에 따른 모든 책임은 사용자에게 있습니다.
-
RFC 5280의 4.2.1.12 절에는 EKU(확장된 키 사용)에 대한 다음과 같은 설명이 나와 있습니다. 이 확장은 키 사용 확장에 나와 있는 기본 용도와 더불어 또는 해당 용도 대신 인증된 공개 키를 사용할 수 있는 하나 이상의 용도를 나타냅니다. 예를 들어 서버에 대한 클라이언트의 인증에 사용되는 인증서는 클라이언트 인증용으로 구성해야 합니다. 마찬가지로 서버 인증에 사용되는 인증서는 서버 인증용으로 구성해야 합니다. 인증에 인증서가 사용되는 경우 인증자는 클라이언트 인증서를 검사한 다음 응용 프로그램 정책 확장에서 올바른 용도의 개체 식별자를 찾습니다. 예를 들어 클라이언트 인증용 개체 식별자는 1.3.6.1.5.5.7.3.2입니다. 클라이언트 인증에 인증서가 사용되는 경우에는 인증서의 EKU 확장에 이 개체 식별자가 있어야 하며, 그렇지 않으면 인증이 실패합니다. EKU 확장이 없는 인증서도 계속 정상적으로 인증됩니다. 올바르게 재발급된 인증서에 일시적으로 액세스할 수 없는 경우 이러한 증상이 연결에 영향을 주지 않도록 하기 위해 모든 컴퓨터 작업에서 보안 변경을 옵트인하거나 옵트아웃하도록 선택할 수 있습니다. 이렇게 하려면 응용 프로그램의 대상 .NET Framework 버전에 따라 다음 레지스트리 키 설정을 지정합니다. 방법 1: 레지스트리 키 업데이트(모든 버전에 사용 가능) 참고 이 레지스트리 항목은 DWORD 항목이어야 합니다.
-
32비트 시스템의 32비트 프로세스 및 64비트 시스템의 64비트 프로세스:
HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\v4.0.30319@RequireCertificateEKUs=0
-
64비트 시스템의 32비트 프로세스:
HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\.NETFramework\v4.0.30319@RequireCertificateEKUs=0
응용 프로그램별로 옵트아웃할 수도 있습니다. 다음 옵션을 사용하면 이 변경이 수행되지 않도록 설정하여 응용 프로그램 호환성을 유지할 수 있습니다.
방법 2: 개별 응용 프로그램에 대해 정책을 사용하지 않도록 설정 참고 이 레지스트리 항목은 DWORD 항목이어야 합니다. 유효한 값은 0뿐입니다. 기타 모든 값은 무시됩니다.-
32비트 시스템의 32비트 프로세스 및 64비트 시스템의 64비트 프로세스:
HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\v4.0.30319@System.Net.ServicePointManager.RequireCertificateEKUs
S:\Prj\console_pg\console_pg45\bin\Release\console_pg45.exe=0 C:\MyApp\MyApp.exe=0 -
64비트 시스템의 32비트 프로세스:
HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\.NETFramework\v4.0.30319@System.Net.ServicePointManager.RequireCertificateEKUs
S:\Prj\console_pg\console_pg45\bin\Release\console_pg45.exe=0 C:\MyApp\MyApp.exe=0
방법 3: 구성 API 사용(.NET Framework 4.6 이상 버전에 사용 가능)
.NET Framework 4.6부터는 코드, 응용 프로그램 구성 또는 레지스트리 변경을 통해 응용 프로그램 수준에서 구성을 변경할 수 있습니다. .NET Framework 4.6에서 스위치 구성 참고 다음 예제에서는 보안 기능을 사용하지 않도록 설정합니다.-
프로그래밍 방법
응용 프로그램은 먼저 다음 코드를 실행해야 합니다. Service Point Manager는 한 번만 초기화되기 때문입니다. private const string DisableCachingName = @"TestSwitch.LocalAppContext.DisableCaching"; private const string DontCheckCertificateEKUsName= @"Switch.System.Net.DontCheckCertificateEKUs"; AppContext.SetSwitch(DisableCachingName, true); AppContext.SetSwitch(DontCheckCertificateEKUsName, true); -
응용 프로그램 구성
응용 프로그램 구성을 변경하려면 다음 항목을 추가합니다. <runtime> <AppContextSwitchOverrides value="Switch.System.Net.DontCheckCertificateEKUsName=true"/> </runtime> -
레지스트리 키(컴퓨터 전체):
레지스트리 위치: HKEY_LOCAL_MACHINE\Software\[Wow6432Node\]Microsoft\.NETFramework\AppContext\Switch.System.Net.DontCheckCertificateEKUsName
종류: 문자열
값: "true"
참고 기본적으로 .NET Framework 4.6 이상 버전에서 실행되는 모든 .NET Framework 4.x 응용 프로그램에 대해 Switch.System.Net.DontCheckCertificateEKUsName = True입니다.
-
-
Windows 7 서비스 팩 1 및 Windows Server 2008 R2 서비스 팩 1과 관련한 이 보안 업데이트에 대한 자세한 내용은 Microsoft 기술 자료에서 다음 문서를 참조하십시오.
4019108 Windows 7 서비스 팩 1 및 Windows Server 2008 R2 서비스 팩 1의 .NET Framework 3.5.1, 4.5.2, 4.6, 4.6.1 및 4.6.2 업데이트용 보안 전용 업데이트: 2017년 5월 9일 화요일
업데이트를 구하고 설치하는 방법
방법 1: Microsoft Update 카탈로그
이 업데이트의 독립 실행형 패키지를 얻으려면 Microsoft 업데이트 카탈로그로 이동하세요.
방법 2: WSUS(Windows Software Update Services)
WSUS 서버에서 다음 단계를 수행합니다.
-
시작, 관리 도구, Microsoft Windows Server Update Services 3.0을 차례로 클릭합니다.
-
ComputerName 을 확장한 다음 작업을 클릭합니다.
-
업데이트 가져오기를 클릭합니다.
-
브라우저 창이 열립니다. ActiveX 컨트롤을 설치하라는 메시지가 표시되는 경우 계속하려면 ActiveX 컨트롤을 설치해야 합니다.
-
컨트롤이 설치되면 Microsoft 업데이트 카탈로그 화면이 표시됩니다. 검색 상자에 4019108을 입력하고 검색을 클릭합니다.
-
사용자 환경의 운영 체제, 언어 및 프로세서와 일치하는 .NET Framework 패키지를 찾습니다. 추가를 클릭하여 해당 패키지를 바구니에 추가합니다.
-
필요한 패키지를 모두 선택했으면 바구니 보기를 클릭합니다.
-
가져오기를 클릭하여 패키지를 WSUS 서버로 가져옵니다.
-
패키지를 가져왔으면 닫기를 클릭하여 WSUS로 돌아옵니다.
이제 WSUS를 통해 업데이트를 설치할 수 있습니다.
배포 정보 업데이트
이 보안 업데이트에 대한 배포 정보는 Microsoft 기술 자료의 다음 문서를 참조하십시오.
20170509 보안 업데이트 배포 정보: 2017년 5월 9일 화요일
업데이트 제거 정보
참고 보안 업데이트는 제거하지 않는 것이 좋습니다.
이 업데이트를 제거하려면 제어판의 프로그램 및 기능 항목을 사용하십시오.
업데이트 다시 시작 정보
업데이트 중인 파일이 잠겨 있거나 사용 중인 경우가 아니면 이 업데이트를 적용한 후에 시스템을 다시 시작할 필요가 없습니다.
업데이트 대체 정보
이 업데이트는 이전에 릴리스된 업데이트를 대체하지 않습니다.
파일 정보
패키지 이름 |
패키지 해시 SHA 1 |
패키지 해시 SHA 2 |
---|---|---|
NDP46-KB4014588-x64.exe |
924A413D7B285B2E5FE24FA80429D9746DC09045 |
28B59CC1347C9841EDDA7A94CDC9D3F995A02D38628E11B86ECEFBD24A995A82 |
NDP46-KB4014588-x86.exe |
5E386600CDC784A0A05187ADC160C6FB0FC12571 |
62A62E005004F5F91D5F4CF1E9FF4595D315267B8A52047147A5C5DB44417C78 |
이 핫픽스의 영어(미국) 버전은 다음 표에 나열된 특성을 갖는 파일을 설치합니다. 이 파일의 날짜와 시간은 UTC(협정 세계시)로 나열됩니다. 이러한 파일의 날짜와 시간은 로컬 컴퓨터에서 현재의 DST(일광 절약 시간) 설정이 적용된 상태로 현지 시간으로 표시됩니다. 또한 이러한 날짜와 시간은 파일에 대해 특정 작업을 수행할 경우 변경될 수 있습니다.
모든 x86 기반 시스템
파일 이름 |
파일 버전 |
파일 크기 |
날짜 |
시간 |
---|---|---|---|---|
PenIMC.dll |
4.6.1647.0 |
81,560 |
29-Mar-2017 |
00:12 |
PresentationCore.dll |
4.6.1647.0 |
3,521,880 |
29-Mar-2017 |
00:12 |
PresentationFramework.dll |
4.6.1647.0 |
6,190,960 |
29-Mar-2017 |
00:12 |
PresentationHost_v0400.dll |
4.6.1647.0 |
197,848 |
29-Mar-2017 |
00:12 |
PresentationNative_v0400.dll |
4.6.1647.0 |
826,592 |
29-Mar-2017 |
00:12 |
System.Core.dll |
4.6.1647.0 |
1,349,280 |
29-Mar-2017 |
00:12 |
System.dll |
4.6.1647.0 |
3,506,824 |
29-Mar-2017 |
00:12 |
System.Windows.Controls.Ribbon.dll |
4.6.1647.0 |
742,808 |
29-Mar-2017 |
00:12 |
System.Xaml.dll |
4.6.1647.0 |
631,456 |
29-Mar-2017 |
00:12 |
WindowsBase.dll |
4.6.1647.0 |
1,277,768 |
29-Mar-2017 |
00:12 |
WPFFontCache_v0400.exe |
4.6.1647.0 |
25,720 |
29-Mar-2017 |
00:12 |
wpfgfx_v0400.dll |
4.6.1647.0 |
1,759,920 |
29-Mar-2017 |
00:12 |
VsVersion.dll |
14.6.1647.0 |
19,112 |
29-Mar-2017 |
00:12 |
모든 x64 기반 시스템
파일 이름 |
파일 버전 |
파일 크기 |
날짜 |
시간 |
---|---|---|---|---|
PenIMC.dll |
4.6.1647.0 |
97,432 |
29-Mar-2017 |
00:25 |
PenIMC.dll |
4.6.1647.0 |
81,560 |
29-Mar-2017 |
00:12 |
PresentationCore.dll |
4.6.1647.0 |
3,504,320 |
29-Mar-2017 |
00:25 |
PresentationCore.dll |
4.6.1647.0 |
3,521,880 |
29-Mar-2017 |
00:12 |
PresentationFramework.dll |
4.6.1647.0 |
6,190,960 |
29-Mar-2017 |
00:12 |
PresentationHost_v0400.dll |
4.6.1647.0 |
254,680 |
29-Mar-2017 |
00:25 |
PresentationHost_v0400.dll |
4.6.1647.0 |
197,848 |
29-Mar-2017 |
00:12 |
PresentationNative_v0400.dll |
4.6.1647.0 |
1,107,680 |
29-Mar-2017 |
00:25 |
PresentationNative_v0400.dll |
4.6.1647.0 |
826,592 |
29-Mar-2017 |
00:12 |
System.Core.dll |
4.6.1647.0 |
1,349,280 |
29-Mar-2017 |
00:12 |
System.dll |
4.6.1647.0 |
3,506,824 |
29-Mar-2017 |
00:12 |
System.Windows.Controls.Ribbon.dll |
4.6.1647.0 |
742,808 |
29-Mar-2017 |
00:12 |
System.Xaml.dll |
4.6.1647.0 |
631,456 |
29-Mar-2017 |
00:12 |
WindowsBase.dll |
4.6.1647.0 |
1,277,768 |
29-Mar-2017 |
00:12 |
WPFFontCache_v0400.exe |
4.6.1647.0 |
26,744 |
29-Mar-2017 |
02:09 |
WPFFontCache_v0400.exe |
4.6.1647.0 |
25,720 |
29-Mar-2017 |
00:12 |
wpfgfx_v0400.dll |
4.6.1647.0 |
2,262,712 |
29-Mar-2017 |
00:25 |
wpfgfx_v0400.dll |
4.6.1647.0 |
1,759,920 |
29-Mar-2017 |
00:12 |
VsVersion.dll |
14.6.1647.0 |
19,104 |
29-Mar-2017 |
00:25 |
VsVersion.dll |
14.6.1647.0 |
19,112 |
29-Mar-2017 |
00:12 |
이 보안 업데이트에 대한 도움말 및 지원을 받는 방법
-
업데이트 설치에 대한 도움말: Windows 업데이트 FAQ
-
IT 전문가용 보안 솔루션: TechNet 보안 지원 및 문제 해결
-
Windows 기반 제품과 서비스를 바이러스 및 맬웨어로부터 보호하는 방법에 대한 도움말: Microsoft Secure
-
지역별 지원 정보: 국가별 지원
적용 대상
이 문서는 다음에 적용됩니다.
-
다음 운영 체제의 Microsoft .NET Framework 4.6.2:
-
Windows Server 2008 R2 서비스 팩 1
-
Windows 7 서비스 팩 1
-