Data de Lançamento:22 de junho de 2022

[07/04/2023] revised to include missing versions for Windows 10, version 1607 and 1507

[07/24/2023] revised to add release details for July 11, 2023 Security and Quality Rollup resolution

Resumo

Este artigo fornece ajuda para mitigar um problema quando após a instalação das atualizações de 13 de junho de 2023 para .NET Framework e .NET, os utilizadores podem ter problemas com a forma como .NET Framework runtime importa Certificados X.509.

Sintoma

Ao utilizar a classe X509Certificate, X509Certificate2ou X509Certificate2Collectionpara importar um blob PKCS#12 que contenha uma chave privada, a aplicação de chamada pode observar a exceção abaixo.

  • System.Security.Cryptography.CryptographicException: O PKCS12 (PFX) sem uma palavra-passe fornecida excedeu as iterações máximas permitidas. Consulte https://go.microsoft.com/fwlink/?linkid=2233907 para obter mais informações.

Esta falha afeta os blobs PKCS#12 que foram exportados [por exemplo, através de X509Certificate.Export(X509ContentType.Pfx)] sem uma palavra-passe. A falha pode ocorrer de forma não determinista.

Solução

A Microsoft lançou instaladores atualizados para .NET Framework e .NET para resolver este problema. Estes instaladores podem ser aplicados ao computador afetado, independentemente de o computador já ter aplicado as atualizações de segurança originais de 13 de junho de 2023, .NET Framework e .NET.

Importante: 

  • Se utilizou anteriormente os comutadores de registo documentados na atualização KB5025823 Alterar a forma como as aplicações .NET importam certificados X.509 para resolver este problema, remova esses comutadores de registo antes de instalar o novo patch. Execute os dois comandos abaixo a partir de uma linha de comandos elevada para remover os comutadores de registo.

  • reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:32

  • reg delete "HKLM\Software\Microsoft\.NETFramework" /v Pkcs12UnspecifiedPasswordIterationLimit /reg:64

Resolução

Este problema foi resolvido em atualizações fora de banda lançadas a 22 de junho de 2023, para .NET Framework 4.6.2 e versões mais recentes para versões do Windows e do Windows Server afetadas por este problema. Para obter o pacote autónomo para estas atualizações fora de banda, procure o número KB no Catálogo Microsoft Update. Pode importar manualmente estas atualizações para o Windows Server Update Services (WSUS) e o Microsoft Endpoint Configuration Manager. Para obter instruções sobre o WSUS, veja WSUS e o Site de Catálogo. Para obter instruções sobre o Configuration Manger, consulte Importar atualizações do Catálogo Microsoft Update.

Se utilizou alguma solução ou mitigação para este problema, estas já não são necessárias e recomendamos que as remova. Para remover a solução, reveja a solução alternativa ou solução alternativa que foi aplicada para obter instruções.

Versão do Produto

Update

Windows 11, versão 22H2

.NET Framework 4.8.1

Catálogo

5028576

Windows 11, versão 21H2

.NET Framework 4.8

Catálogo

5028582

.NET Framework 4.8.1

Catálogo

5028575

Windows Server 2022

.NET Framework 4.8

Catálogo

5028584

.NET Framework 4.8.1

Catálogo

5028578

Azure Stack HCI, versão 22H2

.NET Framework 4.8

Catálogo

5028584

Azure Stack HCI, versão 21H2

.NET Framework 4.8

Catálogo

5028584

Windows 10 Versão 22H2

.NET Framework 4.8

Catálogo

5028579

.NET Framework 4.8.1

Catálogo

5028574

Windows 10 Versão 21H2

.NET Framework 4.8

Catálogo

5028579

.NET Framework 4.8.1

Catálogo

5028574

Windows 10 1809 (Atualização de Outubro de 2018) e Windows Server 2019

.NET Framework 4.7.2

Catálogo

5028588

.NET Framework 4.8

Catálogo

5028581

Windows 10 1607 (Atualização de Aniversário) e Windows Server 2016

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028623

.NET Framework 4.8

Catálogo

5028580

Windows 10 1507

.NET Framework 4.6, 4.6.2

Catálogo

5028622

Windows Embedded 8.1 e Windows Server 2012 R2

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028590

.NET Framework 4.8

Catálogo

5028585

Windows Embedded 8 e Windows Server 2012

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028589

.NET Framework 4.8

Catálogo

5028583

Windows Embedded 7 Standard e Windows Server 2008 R2 SP1

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028591

.NET Framework 4.8

Catálogo

5028586

todas as versões suportadas do Windows

.NET 6.0.19

Catálogo

5028613

.NET 7.0.8

Catálogo

5028614

Este problema foi resolvido no rollup cumulativo normal lançado a 11 de julho de 2023 para todas as versões suportadas .NET Framework para as versões do Windows e do Windows Server afetadas por este problema.  O Rollup de Segurança e Qualidade está disponível através de Windows Update, Windows Server Update Services e Catálogo Microsoft Update.   

Nota: Os clientes que dependem de Windows Update e Windows Server Update Services receberão automaticamente as atualizações específicas da versão .NET Framework. Os administradores de sistema avançados também podem utilizar as ligações de transferência diretas do Catálogo Microsoft Update abaixo para atualizações específicas de .NET Framework. Antes de aplicar estas atualizações, certifique-se de que revê cuidadosamente a aplicabilidade da versão .NET Framework, para garantir que só instala atualizações nos sistemas onde são aplicadas.

Se utilizou alguma solução ou mitigação para este problema, estas já não são necessárias e recomendamos que as remova. Para remover a solução, reveja a solução alternativa ou solução alternativa que foi aplicada para obter instruções.

Versão do Produto

Update

Windows 11, versão 22H2

.NET Framework 3.5, 4.8.1

Catálogo

5028851

Windows 11, versão 21H2

.NET Framework 3.5, 4.8

Catálogo

5028856

.NET Framework 3.5, 4.8.1

Catálogo

5028850

Windows Server 2022

.NET Framework 3.5, 4.8

Catálogo

5028858

.NET Framework 3.5, 4.8.1

Catálogo

5028852

Azure Stack HCI, versão 22H2

5028935

.NET Framework 3.5, 4.8

Catálogo

5028858

Azure Stack HCI, versão 21H2

5028943

.NET Framework 3.5, 4.8

Catálogo

5028858

Windows 10 Versão 22H2

5028937

.NET Framework 3.5, 4.8

Catálogo

5028853

.NET Framework 3.5, 4.8.1

Catálogo

5028849

Windows 10 Versão 21H2

5028944

.NET Framework 3.5, 4.8

Catálogo

5028853

.NET Framework 3.5, 4.8.1

Catálogo

5028849

Windows 10 1809 (Atualização de Outubro de 2018) e Windows Server 2019

5028936

.NET Framework 3.5, 4.7.2

Catálogo

5028862

.NET Framework 3.5, 4.8

Catálogo

5028855

Windows 10 1607 (Atualização de Aniversário) e Windows Server 2016

.NET Framework 3.5, 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028169

.NET Framework 4.8

Catálogo

5028854

Windows 10 1507

.NET Framework 3,5, 4.6, 4.6.2

Catálogo

5028186

Windows Embedded 8.1 e Windows Server 2012 R2

5028941

.NET Framework 3.5

Catálogo

5028872

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028864

.NET Framework 4.8

Catálogo

5028859

Windows Embedded 8 e Windows Server 2012

5028940

.NET Framework 3.5

Catálogo

5028869

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028863

.NET Framework 4.8

Catálogo

5028857

Windows Embedded 7 Standard e Windows Server 2008 R2 SP1

5028939

.NET Framework 3.5.1

Catálogo

5028871

.NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2

Catálogo

5028865

.NET Framework 4.8

Catálogo

5028860

Windows Server 2008 SP2

5028942

.NET Framework 2.0, 3.0

Catálogo

5028870

.NET Framework 4.6.2

Catálogo

5028865

Atualizações afetadas

As seguintes versões .NET Framework e .NET são afetadas:

  • .NET Framework 4.6.2, 4.7, 4.7.1, 4.7.2, quando a atualização de segurança de 13 de junho de 2022 for instalada.

  • .NET Framework 4.8, quando a atualização de segurança de 13 de junho de 2022 estiver instalada.

  • .NET Framework 4.8.1, quando a atualização de segurança de 13 de junho de 2022 for instalada.

  • .NET 6.0.18.

  • .NET 7.0.7.

Perguntas Mais Frequentes (FAQs)

Quando é que esta alteração foi introduzida?

Esta alteração de comportamento foi introduzida em 13 de junho de 2022, atualizações de segurança para .NET e .NET Framework.

É necessário instalar esta nova atualização?

A instalação desta nova atualização só é necessária se a aplicação estiver a ter o problema descrito no cabeçalho "Sintoma" na parte superior deste artigo. Se não estiver a ter este problema, não é necessário instalar esta atualização.

Esta nova atualização substitui a atualização de 13 de junho de 2023 .NET Framework?

Não, não. Se estiver a utilizar .NET Framework, deve instalar primeiro o rollup de 13 de junho de 2023 ou as atualizações apenas de segurança antes de instalar a nova atualização de 22 de junho de 2023.

Esta nova atualização substitui o .NET 6.0.18 ou o .NET 7.0.7?

Sim, sim. Como parte desta atualização, também vamos lançar o .NET 6.0.19 e o .NET 7.0.8, sendo que ambos podem ser transferidos a partir de https://get.dot.net/. Estas versões destinam-se a substituir o .NET 6.0.18 e o .NET 7.0.7, que foram lançados a 13 de junho de 2023.

A única diferença entre o .NET 6.0.19/7.0.8 e o .NET 6.0.18/7.0.7 é a correção de compatibilidade mencionada acima. O .NET 6.0.19/ 7.0.8 não tem correções de segurança adicionais para além do que já foi publicado no .NET 6.0.18/ 7.0.7.

Informações sobre proteção e segurança

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.