KB5028608 런타임.NET Framework X.509 인증서를 가져오는 방법 변경

참고

출시된 날짜:
2022년 6월 22일

[2023/07/04] Windows 10 버전 1607 및 1507에 대한 누락된 버전을 포함하도록 개정됨

[2023/07/24] 2023년 7월 11일 보안 및 품질 롤업 해상도에 대한 릴리스 세부 정보를 추가하도록 개정됨

요약​​

이 문서는 2023년 6월 13일 .NET Framework 및 .NET용 업데이트를 설치한 후 사용자가 .NET Framework 런타임에서 X.509 인증서를 가져오는 방법에 대한 문제를 완화하는 데 도움이 됩니다.

증상

, X509Certificate2, 또는 X509Certificate2Collection 클래스를 사용하여 X509Certificate프라이빗 키가 포함된 PKCS#12 Blob을 가져올 때 호출 응용 프로그램에서 아래 예외를 관찰할 수 있습니다.

  • System.Security.Cryptography.CryptographicException: 제공된 암호가 없는 PKCS12(PFX)가 허용되는 최대 반복 횟수를 초과했습니다. 자세한 내용은 https://go.microsoft.com/fwlink/?linkid=2233907 를 참조하세요.

이 오류는 암호 없이 [예: 경유 X509Certificate.Export(X509ContentType.Pfx)] 내보낸 PKCS#12 Blob에 영향을 줍니다. 실패는 비결정적으로 발생할 수 있습니다.

해결 방법

Microsoft는 이 문제를 해결하기 위해 .NET Framework 및 .NET용 업데이트된 설치 관리자를 출시했습니다. 이러한 설치 관리자는 컴퓨터가 원래 2023년 6월 13일 .NET Framework 및 .NET 보안 업데이트를 이미 적용했는지 여부에 관계없이 영향을 받는 컴퓨터에 적용할 수 있습니다.

중요

  • 이전에 이 문제를 해결하기 위해 KB5025823 .NET 응용 프로그램에서 X.509 인증서를 가져오는 방식의 변경에 설명된 레지스트리 스위치를 사용한 경우, 새 패치를 설치하기 전에 해당 레지스트리 스위치를 제거하세요. 관리자 권한 명령 프롬프트에서 아래 두 명령을 실행하여 레지스트리 스위치를 제거합니다.
  • reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:32
  • reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:64

해결 방법

이 문제는 이 문제의 영향을 받는 Windows 및 Windows Server 버전용 .NET Framework 4.6.2 이상 버전에 대해 2023년 6월 22일에 릴리스된 대역외 업데이트에서 해결되었습니다. 이러한 대역 외 업데이트에 대한 독립 실행형 패키지를 얻으려면 Microsoft 업데이트 카탈로그에서 KB 번호를 검색하세요. 이러한 업데이트는 WSUS(Windows Server Update Services)와 Microsoft Endpoint Configuration Manager에 수동으로 가져올 수 있습니다. WSUS 지침은 WSUS 및 카탈로그 사이트를 참조하세요. 구성 관리자 지침은 Microsoft 업데이트 카탈로그에서 업데이트 가져오기를 참조하세요.

이 문제에 대한 해결 방법이나 완화 방법을 사용한 경우 더 이상 필요하지 않으므로 제거하는 것이 좋습니다. 해결 방법을 제거하려면 해당 해결 방법이나 지침에 적용된 다른 해결 방법을 다시 확인하세요.

제품 버전 업데이트 기술 자료 문서
Windows 11 버전 22H2
.NET Framework 4.8.1 카탈로그 5028576
Windows 11 버전 21H2
.NET Framework 4.8 카탈로그 5028582
.NET Framework 4.8.1 카탈로그 5028575
Windows Server 2022
.NET Framework 4.8 카탈로그 5028584
.NET Framework 4.8.1 카탈로그 5028578
Azure Stack HCI 버전 22H2
.NET Framework 4.8 카탈로그 5028584
Azure Stack HCI 버전 21H2
.NET Framework 4.8 카탈로그 5028584
Windows 10 버전 22H2
.NET Framework 4.8 카탈로그 5028579
.NET Framework 4.8.1 카탈로그 5028574
Windows 10 버전 21H2
.NET Framework 4.8 카탈로그 5028579
.NET Framework 4.8.1 카탈로그 5028574
Windows 10 1809(2018년 10월 업데이트) 및 Windows Server 2019
.NET Framework 4.7.2 카탈로그 5028588
.NET Framework 4.8 카탈로그 5028581
Windows 10 1607(1주년 업데이트) 및 Windows Server 2016
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028623
.NET Framework 4.8 카탈로그 5028580
Windows 10 1507
.NET Framework 4.6, 4.6.2 카탈로그 5028622
Windows Embedded 8.1 및 Windows Server 2012 R2
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028590
.NET Framework 4.8 카탈로그 5028585
Windows Embedded 8 및 Windows Server 2012
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028589
.NET Framework 4.8 카탈로그 5028583
Windows Embedded 7 Standard 및 Windows Server 2008 R2 SP1
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028591
.NET Framework 4.8 카탈로그 5028586
지원되는 모든 Windows 버전
.NET 6.0.19 카탈로그 5028613
.NET 7.0.8 카탈로그 5028614

이 문제는 이 문제의 영향을 받는 Windows 및 Windows Server 버전에 대해 지원되는 모든 .NET Framework 버전에 대해 2023년 7월 11일에 릴리스된 일반 누적 롤업에서 해결되었습니다.  보안 및 품질 롤업은 Windows 업데이트, Windows Server Update Services 및 Microsoft 업데이트 카탈로그를 통해 사용할 수 있습니다.

참고: Windows 업데이트 및 Windows Server Update Services를 사용하는 고객은 .NET Framework 버전별 업데이트를 자동으로 받게 됩니다. 고급 시스템 관리자는 아래의 직접 Microsoft 업데이트 카탈로그 다운로드 링크를 활용하여 .NET Framework 관련 업데이트를 다운로드할 수도 있습니다. 이러한 업데이트를 적용하기 전에 .NET Framework 버전 적용 가능성을 주의 깊게 검토하여 해당 업데이트가 적용되는 시스템에만 업데이트를 설치하도록 하세요.

이 문제에 대한 해결 방법이나 완화 방법을 사용한 경우 더 이상 필요하지 않으므로 제거하는 것이 좋습니다. 해결 방법을 제거하려면 해당 해결 방법이나 지침에 적용된 다른 해결 방법을 다시 확인하세요.

제품 버전 업데이트 기술 자료 문서
Windows 11 버전 22H2
.NET Framework 3.5, 4.8.1 카탈로그 5028851
Windows 11 버전 21H2
.NET Framework 3.5, 4.8 카탈로그 5028856
.NET Framework 3.5, 4.8.1 카탈로그 5028850
Windows Server 2022
.NET Framework 3.5, 4.8 카탈로그 5028858
.NET Framework 3.5, 4.8.1 카탈로그 5028852
Azure Stack HCI 버전 22H2 5028935
.NET Framework 3.5, 4.8 카탈로그 5028858
Azure Stack HCI 버전 21H2 5028943
.NET Framework 3.5, 4.8 카탈로그 5028858
Windows 10 버전 22H2 5028937
.NET Framework 3.5, 4.8 카탈로그 5028853
.NET Framework 3.5, 4.8.1 카탈로그 5028849
Windows 10 버전 21H2 5028944
.NET Framework 3.5, 4.8 카탈로그 5028853
.NET Framework 3.5, 4.8.1 카탈로그 5028849
Windows 10 1809(2018년 10월 업데이트) 및 Windows Server 2019 5028936
.NET Framework 3.5, 4.7.2 카탈로그 5028862
.NET Framework 3.5, 4.8 카탈로그 5028855
Windows 10 1607(1주년 업데이트) 및 Windows Server 2016
.NET Framework 3.5, 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028169
.NET Framework 4.8 카탈로그 5028854
Windows 10 1507
.NET Framework 3.5, 4.6, 4.6.2 카탈로그 5028186
Windows Embedded 8.1 및 Windows Server 2012 R2 5028941
.NET Framework 3.5 카탈로그 5028872
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028864
.NET Framework 4.8 카탈로그 5028859
Windows Embedded 8 및 Windows Server 2012 5028940
.NET Framework 3.5 카탈로그 5028869
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028863
.NET Framework 4.8 카탈로그 5028857
Windows Embedded 7 Standard 및 Windows Server 2008 R2 SP1 5028939
.NET Framework 3.5.1 카탈로그 5028871
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 카탈로그 5028865
.NET Framework 4.8 카탈로그 5028860
Windows Server 2008 SP2 5028942
.NET Framework 2.0, 3.0 카탈로그 5028870
.NET Framework 4.6.2 카탈로그 5028865

영향을 받는 업데이트

다음 .NET Framework 및 .NET 버전이 영향을 받습니다.

  • .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2(2022년 6월 13일 보안 업데이트 설치 시).
  • .NET Framework 4.8(2022년 6월 13일 보안 업데이트 설치 시).
  • .NET Framework 4.8.1(2022년 6월 13일 보안 업데이트 설치 시).
  • .NET 6.0.18입니다.
  • .NET 7.0.7.

자주 묻는 질문(FAQ)

이 변경 내용은 언제 도입되었나요?

이 동작 변경은 2022년 6월 13일 .NET 및 .NET .NET Framework용 보안 업데이트에 도입되었습니다.

이 새 업데이트를 설치해야 하나요?

이 새 업데이트를 설치하는 것은 응용 프로그램에 이 문서 맨 위에 나오는 "증상" 제목에 설명된 문제가 발생하는 경우에만 필요합니다. 이 문제가 발생하지 않는 경우 이 업데이트를 설치할 필요가 없습니다.

이 새 업데이트가 2023년 6월 13일 .NET Framework 업데이트를 대체하나요?

아니요. .NET Framework를 사용하는 경우 2023년 6월 22일 새 업데이트를 설치하기 전에 먼저 2023년 6월 13일 롤업 또는 보안 전용 업데이트를 설치해야 합니다.

이 새 업데이트가 .NET 6.0.18 또는 .NET 7.0.7을 대체하나요?

예. 이 업데이트의 일부로 https://get.dot.net/ 에서 다운로드할 수 있는 .NET 6.0.19 및 .NET 7.0.8도 릴리스합니다. 이 릴리스는 2023년 6월 13일에 릴리스된 .NET 6.0.18 및 .NET 7.0.7을 대체하기 위한 것입니다.

.NET 6.0.19/7.0.8과 .NET 6.0.18/7.0.7 간의 유일한 차이점은 위에서 언급한 호환성 수정입니다. .NET 6.0.19/7.0.8은 .NET 6.0.18/7.0.7에 이미 게시된 것 이외의 추가 보안 픽스를 수행하지 않습니다.

보호 및 보안 관련 정보