Sumário

Após instalar qualquer uma das 3141780 atualizações de segurança (descritas no boletim de segurança da Microsoft MS16-035), os aplicativos do .NET Framework podem encontrar erros de exceção ou falhas inesperadas quando eles estão processando arquivos que contêm SignedXml.

Mais Informações

ImportanteEsta seção, método ou tarefa contém etapas que descrevem como modificar o Registro. No entanto, sérios problemas poderão ocorrer caso você modifique o Registro incorretamente. Portanto, siga estas etapas cuidadosamente. Para obter mais proteção, faça um backup do Registro antes de modificá-lo. Dessa forma, se ocorrer algum problema, você poderá restaurar o Registro. Para obter mais informações sobre como fazer backup e restaurar o Registro, clique no número a seguir para ler o artigo da Base de Dados de Conhecimento Microsoft:

322756Como fazer backup e restaurar o Registro no Windows

Cenário 1

Cenário 1 sintomas

Aplicativos gerenciados retornam uma exceção de erro que possui a assinatura a seguir:

System.Security.Cryptography.CryptographicException: Não é possível resolver o Uri [FileOrUrl].

ExemploSystem.Security.Cryptography.CryptographicException: Não é possível resolver o Uri testfile.xml.

Cenário 1 Solução

Clientes podem aplicar a chave de registro a seguir a seus sistemas:Entrada do registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security@SignedXmlAllowDetachedSignature=1

Arquivo .Reg disponível para download

Para resolver este problema, clique no link apropriado e, em seguida, clique duas vezes no arquivo baixado para fazer as alterações do registro. SignedXml-ExternalReferences.reg (processo de 32 bits em sistema de 32 bits e processo de 64 bits em sistema de 64 bits) SignedXml-ExternalReferences.Wow6432.reg (processo de 32 bits em sistema de 64 bits)Observações

  • Esta entrada do registro deve ser uma entrada DWORD.

  • Esta entrada do registro restaura o comportamento anterior ao abrir ou fazer download de um recurso que é externo para o documento a ser verificado para calcular seu resumo.

Aviso Ativar essa chave de registro poderia permitir vulnerabilidades de segurança, incluindo Negação de Serviço, Negação de Reflexão Distribuída de Serviço, Divulgação de Informações, Anulação de Assinatura e Execução de Código Remoto.

Cenário 2

Cenário 2 sintomas

Falha na verificação de assinatura quando o sucesso era esperado.

Resolução do cenário 2

Se o conteúdo contiver o bloco de assinatura a seguir, considere aplicar a entrada de registro fornecida:Exemplo de bloco de assinatura<Documento>

<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">

<SignedInfo>

<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />

<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />

<Reference URI="...">

<Transforms>

<Transform Algorithm="http://www.w3.org/TR/1999/REC-xpath-19991116" /></Transforms> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> <DigestValue>…</DigestValue> </Reference> </SignedInfo> <SignatureValue>…</SignatureValue> </Signature> …</Document>Entrada do registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXPathTransform=http://www.w3.org/TR/1999/REC-xpath-19991116

Arquivo .Reg disponível para download

Para resolver este problema, clique no link apropriado e, em seguida, clique duas vezes no arquivo baixado para fazer as alterações do registro. XmlDSigXPathTransform.reg (processo de 32 bits em sistema de 32 bits e processo de 64 bits em sistema de 64 bits)XmlDSigXPathTransform.Wow6432.reg (processo de 32 bits em sistema de 64 bits)Se o bloco de assinatura contiver o texto a seguir, considere aplicar a entrada de registro fornecida:Exemplo de bloco de assinatura<Documento>

<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">

<SignedInfo>

<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />

<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />

<Reference URI="...">

<Transforms>

<Transform Algorithm="http://www.w3.org/TR/1999/REC-xslt-19991116" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /><DigestValue>…</DigestValue></Reference></SignedInfo ><SignatureValue>…</SignatureValue></Signature>… </Document>Entrada do registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXsltTransform=http://www.w3.org/TR/1999/REC-xslt-19991116

Arquivo .Reg disponível para download

Para resolver este problema, clique no link apropriado e, em seguida, clique duas vezes no arquivo baixado para fazer as alterações do registro. XmlDSigXsltTransform.reg (processo de 32 bits em sistema de 32 bits e processo de 64 bits em sistema de 64 bits)XmlDSigXsltTransform.Wow6432.reg (processo de 32 bits em sistema de 64 bits)Observação Por padrão, somente as transformações de assinatura XML que são fornecidas pelo .NET Framework e não aceitam entrada do documento assinado são ativadas. Para ativar transformações que aceitam entradas ou transformações personalizadas, a URI registrada para essa transformação deve ser especificada como os dados de um valor digitado REG_SZ nesta chave de registro. O nome do valor não é processado e pode ser qualquer um que o administrador do computador escolher. Aviso As transformações XPath e XSLT permitem que o remetente do documento crie documentos que sejam computacionalmente caros. Isto poderia causar uma situação de Negação de Serviço.

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.