דלג לתוכן הראשי
היכנס דרך Microsoft
היכנס או צור חשבון.
שלום,
בחר חשבון אחר.
יש לך חשבונות מרובים
בחר את החשבון שברצונך להיכנס באמצעותו.

סיכום

לאחר התקנת אחד מעדכוני האבטחה 3141780 (המתואר בעלון האבטחה של מיקרוסופט MS16-035), יישומי .NET Framework עשוי להיתקל שגיאות חריגה או כשלים בלתי צפויה בעת עיבוד קבצים המכילים SignedXml.

מידע נוסף

חשוב הסעיף, שיטה או המשימה הזו מכילה פעולות המציינות כיצד לשנות את הרישום. עם זאת, עלולות להתרחש בעיות חמורות אם תשנה את הרישום באופן שגוי. לפיכך, ודא כי אתה מבצע צעדים אלה בקפידה. לקבלת הגנה נוספת, בצע גיבוי של הרישום לפני שתבצע בו שינויים. כך תוכל לשחזר את הרישום מאוחר יותר במקרה שתתעורר בעיה. לקבלת מידע נוסף על אופן הגיבוי והשחזור של הרישום, לחץ על מספר המאמר הבא כדי להציג את המאמר הרלוונטי מתוך Microsoft Knowledge Base:

322756 כיצד לגבות ולשחזר את הרישום ב-Windows

תרחיש 1

התופעות תרחיש 1

ניהול יישומים return חריגה שגיאה הכוללת את החתימה הבאה:

System.Security.Cryptography.CryptographicException: אין אפשרות לפענח Uri [FileOrUrl].



דוגמה

System.Security.Cryptography.CryptographicException: אין אפשרות לפענח Uri testfile.xml.



פתרון תרחיש 1

לקוחות ניתן להחיל את מפתח הרישום הבא למערכת שלהם:

ערך הרישום

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security@SignedXmlAllowDetachedSignature=1


. קובץ Reg זמין להורדה

כדי לפתור בעיה זו, לחץ על הקישור המתאים ולאחר מכן לחץ פעמיים על הקובץ שהורד כדי לבצע השינויים ברישום.

SignedXml-ExternalReferences.reg (32 סיביות תהליך במערכת 32-bit) ואת תהליך 64 סיביות במערכת של 64 סיביות

SignedXml-ExternalReferences.Wow6432.reg (תהליך 32 סיביות במערכת של 64 סיביות)


הערות

  • ערך רישום זה צריך להיות ערך DWORD.

  • ערך רישום זה משחזר את אופן הפעולה הקודם של לפתוח או להוריד משאב חיצוני למסמך אימותה לחישוב תקציר שלו.

אזהרה הפעלת מפתח רישום זה עלול לאפשר פגיעויות אבטחה כולל מניעת שירות מבוזרת השתקפות של מניעת שירות, גילוי מידע, מעקף החתימה וכן ביצוע קוד מרחוק.

תרחיש 2

התופעות תרחיש 2

אימות חתימה נכשל בעת הצלחה היה צפוי.



פתרון תרחיש 2

אם התוכן מכיל בלוק החתימה הבאה, לשקול להחיל את ערך הרישום שסופק:

דוגמה בלוק חתימה

<Document>


< xmlns חתימה = "http://www.w3.org/2000/09/xmldsig#" >

<SignedInfo>

< אלגוריתם CanonicalizationMethod = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" / >

< אלגוריתם SignatureMethod = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" / >

< הפניית URI = "..." >

<Transforms>

< צורה של אלגוריתם = "http://www.w3.org/TR/1999/REC-xpath-19991116" / ></Transforms>< אלגוריתם DigestMethod = "http://www.w3.org/2000/09/xmldsig#sha1" / ><DigestValue>…</DigestValue></Reference></SignedInfo><SignatureValue>…</SignatureValue></Signature>…

</Document>


ערך הרישום

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXPathTransform=http://www.w3.org/TR/1999/REC-xpath-19991116


. קובץ Reg זמין להורדה

כדי לפתור בעיה זו, לחץ על הקישור המתאים ולאחר מכן לחץ פעמיים על הקובץ שהורד כדי לבצע השינויים ברישום.

XmlDSigXPathTransform.reg (תהליך 32 סיביות במערכת 32-bit) ואת תהליך 64 סיביות במערכת של 64 סיביות


XmlDSigXPathTransform.Wow6432.reg (תהליך 32 סיביות במערכת של 64 סיביות)

אם בלוק החתימה מכילה את הטקסט הבא, לשקול להחיל את ערך הרישום שסופק:

דוגמה בלוק חתימה

<Document>


< xmlns חתימה = "http://www.w3.org/2000/09/xmldsig#" >

<SignedInfo>

< אלגוריתם CanonicalizationMethod = "http://www.w3.org/TR/2001/REC-xml-c14n-20010315" / >

< אלגוריתם SignatureMethod = "http://www.w3.org/2000/09/xmldsig#rsa-sha1" / >

< הפניית URI = "..." >

<Transforms>

< צורה של אלגוריתם = "http://www.w3.org/TR/1999/REC-xslt-19991116" / ></Transforms>< אלגוריתם DigestMethod = "http://www.w3.org/2000/09/xmldsig#sha1" / ><DigestValue>…</DigestValue></Reference></SignedInfo><SignatureValue>…</SignatureValue></Signature>…
</Document>


ערך הרישום

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\SafeTransformMethods@XmlDsigXsltTransform=http://www.w3.org/TR/1999/REC-xslt-19991116

. קובץ Reg זמין להורדה

כדי לפתור בעיה זו, לחץ על הקישור המתאים ולאחר מכן לחץ פעמיים על הקובץ שהורד כדי לבצע השינויים ברישום.

XmlDSigXsltTransform.reg (תהליך 32 סיביות במערכת 32-bit) ואת תהליך 64 סיביות במערכת של 64 סיביות

XmlDSigXsltTransform.Wow6432.reg (תהליך 32 סיביות במערכת של 64 סיביות)

הערה כברירת מחדל, זמינים רק אלה החתימה המרות XML מסופקים על-ידי .NET Framework והוא מקבל קלט מתוך מסמך חתום. כדי לאפשר קבלת קלט המרות או המרות מותאמות אישית, יש לציין את ה-URI שנרשמו עבור המרה זו כנתונים של ערך REG_SZ-הקלדת בתוך מפתח רישום זה. שם הערך אינו מעובד, והיא יכולה להיות כל דבר בוחר מנהל המחשב.

אזהרה המרות XPath ו- XSLT לאפשר השולח המסמך לבנות מסמכים המהווים יקרים חישובית. הדבר עלול לגרום למצב של מניעת שירות.

זקוק לעזרה נוספת?

מעוניין באפשרויות נוספות?

גלה את יתרונות המנוי, עיין בקורסי הדרכה, למד כיצד לאבטח את המכשיר שלך ועוד.

קהילות עוזרות לך לשאול שאלות ולהשיב עליהן, לתת משוב ולשמוע ממומחים בעלי ידע עשיר.

האם מידע זה היה שימושי?

עד כמה אתם מרוצים מאיכות השפה?
מה השפיע על החוויה שלך?
בלחיצה על 'שלח', אתה מאפשר למשוב שלך לשפר מוצרים ושירותים של Microsoft. מנהל ה-IT שלך יוכל לאסוף נתונים אלה. הצהרת הפרטיות.

תודה על המשוב!

×