2010-09-29 13 views
10

माइक्रोसॉफ्ट ने कल अपने एएसपी.NET में out of band release to fix the security flaw जारी किया।ASP.NET पर ऑरैक पैडिंग हमला कैसे तय किया गया था?

माइक्रोसॉफ्ट ने इस वेक्टर की व्यवहार्यता को समाप्त करने के लिए किस तरीके का उपयोग किया? यह वही है टूट गया है को देखने से रोकता है कारनामे -

+3

मुझे लगता है कि यह नलिका टेप था। – FrustratedWithFormsDesigner

+2

जल्दी या बाद में कोई व्यक्ति NDepend या Reflector का उपयोग कर System.Web.Extensions.dll के दोनों संस्करणों की तुलना करेगा। –

+0

@ मॉरिसियो, एईएस कार्यान्वयन अप्रबंधित कोड हैं इसलिए मुझे नहीं लगता कि परावर्तक या एनडेंपेन्स बहुत मदद करेगा :-) यदि यह एक शुद्ध प्रबंधित फिक्स था तो प्रत्येक कल्पनीय विंडोज संस्करण, सीपीयू प्रकार, के लिए पैच के संस्करण नहीं होंगे। .. –

उत्तर

14

परिवर्तन का एक बड़ा सारांश अपवाद जानकारी लीक नहीं है से http://musingmarc.blogspot.com/2010/09/ms10-070-post-mortem-analysis-of-patch.html

  • आता है।
  • पैडिंग चेक पर शॉर्ट सर्किट न करें (सही छंद पैडिंग के लिए समान मात्रा में पैडिंग के लिए समय लें) - यह गलत पैडिंग के लिए समय अंतर को देखने से शोषण को रोकता है।
  • IHttpHandler.ProcessRequest में अपवाद को पकड़ने के बारे में बहुत पसंद न करें - इससे यह देखने से शोषण रोकता है कि आपने सभी अपवादों के बजाय एक प्रकार का अपवाद (क्रिप्टोग्राफिक एक्सेप्शन) पकड़ा है।
  • हैश-आधारित प्रारंभिक वैक्टर से रैंडम IVs तक स्विच करें - यह आंकड़ों और हैश के बीच संबंधों का उपयोग तेजी से डिक्रिप्ट करने से शोषण को रोकता है।
  • पिछड़े संगतता की अनुमति दें - यदि यह कुछ तोड़ता है, तो नए व्यवहार को भाग में वापस करने की अनुमति दें।
  • कोड समीक्षा पास करते समय, यह स्पष्ट करने के लिए बदलें कि आपने नए विकल्प माना है।
+0

+1 अच्छी विस्तृत जानकारी, मैंने जो मुख्य फिक्स माना है उसके बारे में एक उत्तर जोड़ा। – eglasius

+1

बहुत बुरा मैंने यहां देखने और मेरे ब्लॉग के उत्तर को पहले पोस्ट नहीं किया था :) – IDisposable

+0

@IDisposable आपको ...मैं लेखक – eglasius

3

मुख्य: ब्राउज़र पर भेजे गए किसी भी एन्क्रिप्टेड डेटा पर हस्ताक्षर करें। यह हमले जैसे मूल्यों के साथ गड़बड़ी को रोकता है, वैध बनाम अमान्य पैडिंग पर जानकारी प्राप्त करने के लिए किया गया था, क्योंकि हस्ताक्षर उन सभी मामलों में मेल नहीं खाते हैं।

यह ध्यान रखना महत्वपूर्ण है कि webresource and scriptresource में छेद जो फाइल पुनर्प्राप्ति की अनुमति नहीं देनी चाहिए थी। अकेले सरल एन्क्रिप्शन सबूत छेड़छाड़ करने के लिए नहीं है। दूसरे शब्दों में, यह एक उन्नत परिदृश्य की निगरानी नहीं था जैसे बाकी पैडिंग ऑरैकल हमले (जो अभी भी एक ही तथ्य पर निर्भर था, सर्वर पर कोई छेड़छाड़ सबूत सुरक्षा के साथ ऐप में संशोधित एन्क्रिप्टेड डेटा वापस भेज रहा था)।

उपरोक्त मुख्य फिक्स के अलावा, अपेक्षित चीजें जैसे कि आगे एन्क्रिप्शन साइड चैनल छिपाने की कोशिश कर रहे हैं और यह सुनिश्चित करना कि यह अन्य सुविधाओं को तोड़ने में सक्षम न हो जो समान एन्क्रिप्शन कॉल (जैसे एएसपीनेट सदस्यता) में भरोसा करते हैं।

0

भेद्यता सीबीसी पैडिंग द्वारा पेश की गई त्रुटियों से संबंधित है। हमले के पीछे पूर्ण सिद्धांत here पाया जा सकता है। हालांकि आपको पहले block cipher modes of operation पर पढ़ना होगा।

संबंधित मुद्दे

 संबंधित मुद्दे