Utgivningsdatum:
22 juni 2022[07/04/2023] reviderad för att inkludera saknade versioner för Windows 10 version 1607 och 1507
[2023-07-24] reviderad för att lägga till versionsinformation för den samlade upplösningen 11 juli 2023 för säkerhets- och kvalitetsuppdateringar
Sammanfattning
Den här artikeln innehåller hjälp för att minimera ett problem när användare efter installation av uppdateringarna för .NET Framework och .NET den 13 juni 2023 kan få problem med hur .NET Framework importerar X.509-certifikat vid körning.
Symptom
När du använder klassen X509Certificate, X509Certificate2eller X509Certificate2Collectionför att importera en PKCS#12-blob som innehåller en privat nyckel, kan det anropande programmet observera undantaget nedan.
-
System.Security.Cryptography.CryptographicException: PKCS12 (PFX) utan ett angiven lösenord har överskridit max tillåtna iterationer. Mer information finns i https://go.microsoft.com/fwlink/?linkid=2233907 .
Det här felet påverkar PKCS#12 blobs som har exporterats [t.ex. via X509Certificate.Export(X509ContentType.Pfx)] utan lösenord. Felet kan uppstå icke-deterministiskt.
Lösning
Microsoft har släppt uppdaterade installationsprogram för .NET Framework och .NET för att åtgärda problemet. Dessa installationsprogram kan tillämpas på den berörda datorn oavsett om datorn redan har installerat de ursprungliga säkerhetsuppdateringarna från 13 juni 2023, .NET Framework och .NET.
Viktigt!:
-
Om du tidigare har använt registerväxlarna som beskrivs i KB5025823 Ändra hur .NET-program importerar X.509-certifikat för att kringgå det här problemet bör du ta bort registerväxlarna innan du installerar den nya korrigeringsfilen. Kör de två kommandona nedan från en kommandotolk med förhöjd behörighet för att ta bort registerväxlarna.
-
reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:32
-
reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:64
Lösning
Det här problemet åtgärdades i uppdateringar som släpptes 22 juni 2023 för .NET Framework 4.6.2 och senare versioner för Windows och Windows Server-versioner som påverkas av det här problemet. Om du vill hämta det fristående paketet för dessa inbyggda uppdateringar söker du efter KB-numret i Microsoft Update Catalog. Du kan manuellt importera dessa uppdateringar till Windows Server Update Services (WSUS) och Microsoft Endpoint Configuration Manager. Instruktioner för WSUS finns i WSUS och katalogwebbplatsen. Instruktioner för konfigurationsassistenten finns i Importera uppdateringar från Microsoft Update Catalog.
Om du har använt någon lösning eller lösningar för det här problemet behövs de inte längre, och vi rekommenderar att du tar bort dem. Om du vill ta bort en lösning granskar du den lösning eller alternativ lösning som tillämpats för instruktioner.
Produktversion |
Uppdatera |
|
---|---|---|
Windows 11 version 22H2 |
||
.NET Framework 4.8.1 |
||
Windows 11 version 21H2 |
||
.NET Framework 4,8 |
||
.NET Framework 4.8.1 |
||
Windows Server 2022 |
||
.NET Framework 4,8 |
||
.NET Framework 4.8.1 |
||
Azure Stack HCI version 22H2 |
||
.NET Framework 4,8 |
||
Azure Stack HCI version 21H2 |
||
.NET Framework 4,8 |
||
Windows 10 version 22H2 |
||
.NET Framework 4,8 |
||
.NET Framework 4.8.1 |
||
Windows 10 version 21H2 |
||
.NET Framework 4,8 |
||
.NET Framework 4.8.1 |
||
Windows 10 1809 (oktober 2018-uppdateringen) och Windows Server 2019 |
||
.NET Framework 4.7.2 |
||
.NET Framework 4,8 |
||
Windows 10 1607 (Anniversary Update) och Windows Server 2016 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows 10 1507 |
||
.NET Framework 4.6, 4.6.2 |
||
Windows Embedded 8.1 och Windows Server 2012 R2 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows Embedded 8 och Windows Server 2012 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows Embedded 7 Standard och Windows Server 2008 R2 SP1 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
alla Windows-versioner som stöds |
||
.NET 6.0.19 |
||
.NET 7.0.8 |
Det här problemet åtgärdades i den regelbundna kumulativa samlade uppdateringen från 11 juli 2023 för alla .NET Framework versioner som stöds för Windows- och Windows Server-versioner som påverkas av det här problemet. Den samlade säkerhets- och kvalitetsuppdateringen är tillgänglig via Windows Update, Windows Server Update Services och Microsoft Update Catalog.
Obs! Kunder som är beroende av Windows Update och Windows Server Update Services får automatiskt de .NET Framework versionsspecifika uppdateringarna. Avancerade systemadministratörer kan också använda nedanstående direktnedladdningslänkar för Microsoft Update Catalog till .NET Framework specifika uppdateringar. Innan du installerar de här uppdateringarna bör du se till att noggrant granska .NET Framework version tillämplighet, så att du bara installerar uppdateringar på system där de gäller.
Om du har använt någon lösning eller lösningar för det här problemet behövs de inte längre, och vi rekommenderar att du tar bort dem. Om du vill ta bort en lösning granskar du den lösning eller alternativ lösning som tillämpats för instruktioner.
Produktversion |
Uppdatera |
|
---|---|---|
Windows 11 version 22H2 |
||
.NET Framework 3,5, 4.8.1 |
||
Windows 11 version 21H2 |
||
.NET Framework 3,5, 4,8 |
||
.NET Framework 3,5, 4.8.1 |
||
Windows Server 2022 |
||
.NET Framework 3,5, 4,8 |
||
.NET Framework 3,5, 4.8.1 |
||
Azure Stack HCI version 22H2 |
||
.NET Framework 3,5, 4,8 |
||
Azure Stack HCI version 21H2 |
||
.NET Framework 3,5, 4,8 |
||
Windows 10 version 22H2 |
||
.NET Framework 3,5, 4,8 |
||
.NET Framework 3,5, 4.8.1 |
||
Windows 10 version 21H2 |
||
.NET Framework 3,5, 4,8 |
||
.NET Framework 3,5, 4.8.1 |
||
Windows 10 1809 (oktober 2018-uppdateringen) och Windows Server 2019 |
||
.NET Framework 3,5, 4.7.2 |
||
.NET Framework 3,5, 4,8 |
||
Windows 10 1607 (Anniversary Update) och Windows Server 2016 |
||
.NET Framework 3,5, 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows 10 1507 |
||
.NET Framework 3,5, 4,6, 4.6.2 |
||
Windows Embedded 8.1 och Windows Server 2012 R2 |
||
.NET Framework 3,5 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows Embedded 8 och Windows Server 2012 |
||
.NET Framework 3,5 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows Embedded 7 Standard och Windows Server 2008 R2 SP1 |
||
.NET Framework 3.5.1 |
||
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 |
||
.NET Framework 4,8 |
||
Windows Server 2008 SP2 |
||
.NET Framework 2.0, 3.0 |
||
.NET Framework 4.6.2 |
Berörda uppdateringar
Följande .NET Framework- och .NET-versioner påverkas:
-
.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, när säkerhetsuppdateringen från 13 juni 2022 installeras.
-
.NET Framework 4.8 installeras säkerhetsuppdateringen den 13 juni 2022.
-
.NET Framework 4.8.1 installeras säkerhetsuppdateringen den 13 juni 2022.
-
.NET 6.0.18.
-
.NET 7.0.7.
Vanliga frågor och svar
När infördes den här ändringen?
Den här beteendeförändringen infördes i säkerhetsuppdateringarna för .NET och .NET Framework den 13 juni 2022.
Är det nödvändigt för mig att installera den här nya uppdateringen?
Det är bara nödvändigt att installera den här nya uppdateringen om ditt program har det problem som beskrivs i rubriken "Symptom" högst upp i den här artikeln. Om du inte har det här problemet behöver du inte installera den här uppdateringen.
Ersätter den här nya uppdateringen den 13 juni 2023 .NET Framework uppdatering?
Nej. Om du använder .NET Framework bör du först installera den samlade uppdateringen från 13 juni 2023 eller säkerhetsrelaterade uppdateringar innan du installerar den nya uppdateringen från 22 juni 2023.
Ersätter den här nya uppdateringen .NET 6.0.18 eller .NET 7.0.7?
Ja. Som en del av den här uppdateringen släpper vi även .NET 6.0.19 och .NET 7.0.8, som båda kan laddas ned från https://get.dot.net/. De här versionerna är avsedda att ersätta .NET 6.0.18 och .NET 7.0.7, som släpptes 13 juni 2023.
Den enda skillnaden mellan .NET 6.0.19 / 7.0.8 och .NET 6.0.18 / 7.0.7 är kompatibilitetskorrigeringen som nämns ovan. .NET 6.0.19 / 7.0.8 har inga ytterligare säkerhetskorrigeringar utöver vad som redan publicerats i .NET 6.0.18 / 7.0.7.
Information om skydd och säkerhet
-
Skydda dig själv online: Windows-säkerhet support
-
Lär dig hur vi skyddar oss mot cyberhot: Microsoft Security