Sammanfattning
När du har installerat någon av säkerhetsuppdateringarna 3141780 (beskrivs i Microsoft-säkerhetsbulletinen MS16-035).NET Framework-program kan uppstå undantag eller ett oväntat fel när de behandlar filer som innehåller SignedXml.
Mer Information
Viktigt Avsnittet, metoden eller aktiviteten innehåller instruktioner om hur du ändrar registret. Allvarliga problem kan dock uppstå om du ändrar registret felaktigt. Se därför till att du följer instruktionerna noga. För extra skydd, säkerhetskopiera registret innan du ändrar det. Du kan sedan återställa registret om det uppstår problem. För mer information om hur du säkerhetskopierar och återställer registret klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
322756 Säkerhetskopiera och återställa registret i Windows
Scenario 1
Scenario 1 Symptom
Hanterade program avkastning ett undantag för fel som har följande signatur:
System.Security.Cryptography.CryptographicException: Det gick inte att matcha URI: N [FileOrUrl].
Exempel
System.Security.Cryptography.CryptographicException: Det gick inte att matcha Uri-testfile.xml.
Upplösning för Scenario 1
Kunder kan använda följande registernyckel till sitt system:
Registerposten
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security@SignedXmlAllowDetachedSignature=1
. REG-filen tillgänglig för hämtning
Lös det här problemet klickar du på länken och sedan dubbelklicka på den hämta filen om du vill ändra registret.
SignedXml ExternalReferences.reg (32-bitars process på 32-bitars system) och 64-bitarsprocess på 64-bitars system
SignedXml ExternalReferences.Wow6432.reg (32-bitars process på 64-bitars system)
Kommentarer
-
Den här registerposten ska vara ett DWORD-värde.
-
Den här registerposten återställer den tidigare funktionen för öppna eller hämta en resurs som är extern för dokumentet som verifieras för att beräkna dess digest.
Varning Aktivera den här registernyckeln möjliggör säkerhet säkerhetsproblem, däribland Denial of Service, distribuerade reflektion DOS, utlämnande, signatur kringgå och fjärrkörning av kod.
Scenario 2
Scenario 2 Symptom
Signaturverifieringen misslyckas när framgång förväntades.
Upplösning för scenario 2
Om innehållet innehåller följande signatur blockera, bör du överväga att använda registerposten angivna:
Signatur blockera exempel
<Document>
…
< signatur xmlns = "http://www.w3.org/2000/09/xmldsig#" >
<SignedInfo>
< CanonicalizationMethod algoritm = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" / >
< SignatureMethod algoritm = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" / >
< referera URI = "..." >
<Transforms>
< Omforma Algorithm = "http://www.w3.org/TR/1999/REC-xpath-19991116" / ></Transforms>< DigestMethod algoritm = "http://www.w3.org/2000/09/xmldsig#sha1" / ><DigestValue>…</DigestValue></Reference></SignedInfo><SignatureValue>…</SignatureValue></Signature>…
</Document>
Registerposten
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXPathTransform=http://www.w3.org/TR/1999/REC-xpath-19991116
. REG-filen tillgänglig för hämtning
Lös det här problemet klickar du på länken och sedan dubbelklicka på den hämta filen om du vill ändra registret.
XmlDSigXPathTransform.reg (32-bitars process på 32-bitars system) och 64-bitarsprocess på 64-bitars system
XmlDSigXPathTransform.Wow6432.reg (32-bitars process på 64-bitars system)
Om signaturen blocket innehåller följande text, bör du överväga att använda registerposten angivna:
Signatur blockera exempel
<Document>
…
< signatur xmlns = "http://www.w3.org/2000/09/xmldsig#" >
<SignedInfo>
< CanonicalizationMethod algoritm = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" / >
< SignatureMethod algoritm = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" / >
< referera URI = "..." >
<Transforms>
< Omforma Algorithm = "http://www.w3.org/TR/1999/REC-xslt-19991116" / ></Transforms>< DigestMethod algoritm = "http://www.w3.org/2000/09/xmldsig#sha1" / ><DigestValue>…</DigestValue></Reference></SignedInfo><SignatureValue>…</SignatureValue></Signature>…
</Document>
Registerposten
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXsltTransform=http://www.w3.org/TR/1999/REC-xslt-19991116
. REG-filen tillgänglig för hämtning
Lös det här problemet klickar du på länken och sedan dubbelklicka på den hämta filen om du vill ändra registret.
XmlDSigXsltTransform.reg (32-bitars process på 32-bitars system) och 64-bitarsprocess på 64-bitars system
XmlDSigXsltTransform.Wow6432.reg (32-bitars process på 64-bitars system)
Obs! Som standard aktiveras endast de XML-signatur transformeringar som tillhandahålls av.NET Framework och som inte accepterar indata från det signerade dokumentet. Om du vill aktivera accepterar indata transformeringar eller anpassade transformeringar måste registrerade URI för att omforma anges som datatypen REG_SZ skriver värdet i den här registernyckeln. Namnet på värdet bearbetas inte och kan vara något som administratören väljer.
Varning XPath- och XSLT-transformeringar kan dokumentet avsändaren att skapa dokument som är arbetsintensivt dyra. Detta kan medföra en DOS-situation.