Remarque
Date de publication :
Dernière mise à jour : 22 juin 2022
[07/04/2023] Révisé pour inclure les versions manquantes pour Windows 10, version 1607 et 1507
[24/07/2023] révisé pour ajouter des détails de publication pour la résolution du correctif cumulatif de sécurité et de qualité du 11 juillet 2023
Résumé
Cet article fournit de l’aide pour atténuer un problème survenant après l’installation des mises à jour du 13 juin 2023 pour .NET Framework et .NET, en raison duquel les utilisateurs peuvent rencontrer des problèmes avec la façon dont .NET Framework importe les certificats X.509.
Symptôme
Lors de l’utilisation de la classe , X509Certificate2ou X509Certificate2Collection pour X509Certificateimporter un objet blob PKCS#12 contenant une clé privée, l’application appelante peut observer l’exception ci-dessous.
- System.Security.Cryptography.CryptographicException : PKCS12 (PFX) sans mot de passe fourni a dépassé le nombre maximal d’itérations autorisées. Pour plus d’informations, consultez https://go.microsoft.com/fwlink/?linkid=2233907.
Cet échec affecte les objets blob PKCS#12 qui ont été exportés [par exemple, via X509Certificate.Export(X509ContentType.Pfx)] sans mot de passe. L’échec peut se produire de manière non déterministe.
Solution de contournement
Microsoft a publié des programmes d’installation mis à jour pour .NET Framework et .NET afin de résoudre ce problème. Ces programmes d’installation peuvent être appliqués à la machine affectée, que celle-ci ait déjà appliqué les mises à jour de sécurité .NET Framework et .NET du 13 juin 2023 d’origine.
Important
- Si vous avez déjà utilisé les commutateurs de Registre documentés dans KB5025823 Modification de la façon dont les applications .NET importent les certificats X.509 pour contourner ce problème, veuillez supprimer ces commutateurs de Registre avant d’installer le nouveau correctif. Exécutez les deux commandes ci-dessous à partir d’une invite de commandes avec élévation de privilèges pour supprimer les commutateurs de Registre.
reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:32reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:64
Solution
Ce problème a été résolu dans les mises à jour hors bande publiées le 22 juin 2023 pour .NET Framework 4.6.2 et les versions plus récentes pour Windows et les versions de Windows Windows Server affectées par ce problème. Pour obtenir le package autonome pour ces mises à jour hors bande, recherchez le numéro de base de connaissances dans le catalogue Microsoft Update. Vous pouvez importer manuellement ces mises à jour dans Windows Server Update Services (WSUS) et Microsoft Endpoint Configuration Manager. Pour obtenir des instructions sur WSUS, consultez WSUS et le site de catalogue. Pour obtenir des instructions sur Configuration Manager, consultez Importer des mises à jour à partir du Catalogue Microsoft Update.
Si vous avez utilisé des solutions de contournement ou d’atténuation pour ce problème, elles ne sont plus nécessaires et nous vous recommandons de les supprimer. Pour supprimer la solution de contournement, consultez la solution de contournement ou la solution de contournement alternative qui a été appliquée pour obtenir des instructions.
| Version du produit | Mettre à jour | Article de la Base de connaissances |
|---|---|---|
| Windows 11, version 22H2 | ||
| .NET Framework 4.8.1 | Catalogue | 5028576 |
| Windows 11, version 21H2 | ||
| .NET Framework 4.8 | Catalogue | 5028582 |
| .NET Framework 4.8.1 | Catalogue | 5028575 |
| Windows Server 2022 | ||
| .NET Framework 4.8 | Catalogue | 5028584 |
| .NET Framework 4.8.1 | Catalogue | 5028578 |
| Azure Stack HCI, version 22H2 | ||
| .NET Framework 4.8 | Catalogue | 5028584 |
| Azure Stack HCI, version 21H2 | ||
| .NET Framework 4.8 | Catalogue | 5028584 |
| Windows 10 version 22H2 | ||
| .NET Framework 4.8 | Catalogue | 5028579 |
| .NET Framework 4.8.1 | Catalogue | 5028574 |
| Windows 10 version 21H2 | ||
| .NET Framework 4.8 | Catalogue | 5028579 |
| .NET Framework 4.8.1 | Catalogue | 5028574 |
| Windows 10 1809 (mise à jour d’octobre 2018) et Windows Server 2019 | ||
| .NET Framework 4.7.2 | Catalogue | 5028588 |
| .NET Framework 4.8 | Catalogue | 5028581 |
| Windows 10 version 1607 (mise à jour Anniversaire) et Windows Server 2016 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028623 |
| .NET Framework 4.8 | Catalogue | 5028580 |
| Windows 10 version 1507 | ||
| .NET Framework 4.6, 4.6.2 | Catalogue | 5028622 |
| Windows Embedded 8.1 et Windows Server 2012 R2 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028590 |
| .NET Framework 4.8 | Catalogue | 5028585 |
| Windows Embedded 8 et Windows Server 2012 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028589 |
| .NET Framework 4.8 | Catalogue | 5028583 |
| Windows Embedded 7 Standard et Windows Server 2008 R2 SP1 | ||
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028591 |
| .NET Framework 4.8 | Catalogue | 5028586 |
| toutes les versions de Windows prises en charge | ||
| .NET 6.0.19 | Catalogue | 5028613 |
| .NET 7.0.8 | Catalogue | 5028614 |
Ce problème a été résolu dans le correctif cumulatif régulier publié le 11 juillet 2023 pour toutes les versions prises en charge de .NET Framework pour Windows et les versions de Windows Windows Server concernées par ce problème. Le correctif cumulatif de sécurité et de qualité est disponible via Windows Update, Windows Server Update Services et le Catalogue Microsoft Update.
Remarque : Les clients qui s’appuient sur Windows Update et Windows Server Update Services recevront automatiquement les mises à jour spécifiques à la version de .NET Framework. Les administrateurs système avancés peuvent également utiliser les liens de téléchargement directs du catalogue Microsoft Update ci-dessous pour les mises à jour spécifiques à .NET Framework. Avant d’appliquer ces mises à jour, veillez à examiner attentivement l’applicabilité de la version de .NET Framework, afin de vous assurer que vous n’installez les mises à jour que sur les systèmes où elles s’appliquent.
Si vous avez utilisé des solutions de contournement ou d’atténuation pour ce problème, elles ne sont plus nécessaires et nous vous recommandons de les supprimer. Pour supprimer la solution de contournement, consultez la solution de contournement ou la solution de contournement alternative qui a été appliquée pour obtenir des instructions.
| Version du produit | Mettre à jour | Article de la Base de connaissances |
|---|---|---|
| Windows 11, version 22H2 | ||
| .NET Framework 3.5, 4.8.1 | Catalogue | 5028851 |
| Windows 11, version 21H2 | ||
| .NET Framework 3.5, 4.8 | Catalogue | 5028856 |
| .NET Framework 3.5, 4.8.1 | Catalogue | 5028850 |
| Windows Server 2022 | ||
| .NET Framework 3.5, 4.8 | Catalogue | 5028858 |
| .NET Framework 3.5, 4.8.1 | Catalogue | 5028852 |
| Azure Stack HCI, version 22H2 | 5028935 | |
| .NET Framework 3.5, 4.8 | Catalogue | 5028858 |
| Azure Stack HCI, version 21H2 | 5028943 | |
| .NET Framework 3.5, 4.8 | Catalogue | 5028858 |
| Windows 10 version 22H2 | 5028937 | |
| .NET Framework 3.5, 4.8 | Catalogue | 5028853 |
| .NET Framework 3.5, 4.8.1 | Catalogue | 5028849 |
| Windows 10 version 21H2 | 5028944 | |
| .NET Framework 3.5, 4.8 | Catalogue | 5028853 |
| .NET Framework 3.5, 4.8.1 | Catalogue | 5028849 |
| Windows 10 1809 (mise à jour d’octobre 2018) et Windows Server 2019 | 5028936 | |
| .NET Framework 3.5, 4.7.2 | Catalogue | 5028862 |
| .NET Framework 3.5, 4.8 | Catalogue | 5028855 |
| Windows 10 version 1607 (mise à jour Anniversaire) et Windows Server 2016 | ||
| .NET Framework 3.5, 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028169 |
| .NET Framework 4.8 | Catalogue | 5028854 |
| Windows 10 version 1507 | ||
| .NET Framework 3.5, 4.6, 4.6.2 | Catalogue | 5028186 |
| Windows Embedded 8.1 et Windows Server 2012 R2 | 5028941 | |
| .NET Framework 3.5 | Catalogue | 5028872 |
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028864 |
| .NET Framework 4.8 | Catalogue | 5028859 |
| Windows Embedded 8 et Windows Server 2012 | 5028940 | |
| .NET Framework 3.5 | Catalogue | 5028869 |
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028863 |
| .NET Framework 4.8 | Catalogue | 5028857 |
| Windows Embedded 7 Standard et Windows Server 2008 R2 SP1 | 5028939 | |
| .NET Framework 3.5.1 | Catalogue | 5028871 |
| .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2 | Catalogue | 5028865 |
| .NET Framework 4.8 | Catalogue | 5028860 |
| Windows Server 2008 SP2 | 5028942 | |
| .NET Framework 2.0, 3.0 | Catalogue | 5028870 |
| .NET Framework 4.6.2 | Catalogue | 5028865 |
Mises à jour concernées
Les versions .NET Framework et .NET suivantes sont concernées :
- .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, lorsque la mise à jour de sécurité du 13 juin 2022 est installée.
- .NET Framework 4.8, lorsque la mise à jour de sécurité du 13 juin 2022 est installée.
- .NET Framework 4.8.1, lorsque la mise à jour de sécurité du 13 juin 2022 est installée.
- .NET 6.0.18.
- .NET 7.0.7.
Forum aux questions sur la protection des données personnelles
Quand ce changement a-t-il été introduit ?
Ce changement de comportement a été introduit dans les mises à jour de sécurité du 13 juin 2022 pour .NET et .NET Framework.
Dois-je installer cette nouvelle mise à jour ?
L’installation de cette nouvelle mise à jour est nécessaire uniquement si votre application rencontre le problème décrit dans l’en-tête « Symptôme » au début de cet article. Si vous ne rencontrez pas ce problème, il n’est pas nécessaire que vous installiez cette mise à jour.
Cette nouvelle mise à jour remplace-t-elle la mise à jour .NET Framework du 13 juin 2023 ?
Non. Si vous utilisez .NET Framework, vous devez d’abord installer le correctif cumulatif ou les mises à jour de sécurité uniquement du 13 juin 2023 avant d’installer la nouvelle mise à jour du 22 juin 2023.
Cette nouvelle mise à jour remplace-t-elle .NET 6.0.18 ou .NET 7.0.7 ?
Oui. Dans le cadre de cette mise à jour, nous publions également .NET 6.0.19 et .NET 7.0.8, qui peuvent être téléchargés à partir de https://get.dot.net/. Ces versions sont destinées à remplacer .NET 6.0.18 et .NET 7.0.7, qui ont été publiées le 13 juin 2023.
La seule différence entre .NET 6.0.19 / 7.0.8 et .NET 6.0.18 / 7.0.7 est le correctif de compatibilité mentionné ci-dessus. .NET 6.0.19 / 7.0.8 ne comporte aucun correctif de sécurité supplémentaire au-delà de ce qui a déjà été publié dans .NET 6.0.18 / 7.0.7.
Informations sur la protection et la sécurité
- Se protéger en ligne : Support sécurité Windows
- Découvrez comment nous vous protégeons des cybermenaces : Sécurité Microsoft