द्वारा पकड़े गए हैं, मैं एक एक्सएसएस भेद्यता का एक उदाहरण ढूंढ रहा हूं जिसे एंटीएक्सएसएस एनकोडर 4.1 बीटा को रनटाइम एन्कोडर के रूप में उपयोग करके रोक दिया जाएगा (system.web/httpRuntime में सेटिंग)। मैं कुछ है कि AntiXss कार्यों ऐसेएएसपी.NET 4 <%: %> या रेजर एन्कोडिंग द्वारा प्राप्त एक्सएसएस भेद्यता के उदाहरण लेकिन एंटीएक्सएसएस
@AntiXss.JavaScriptEncode(ViewBag.UserName)
के रूप में मैं कुछ है कि ASP.NET ब्लैकलिस्ट द्वारा मिलेगा लेकिन AntiXSS श्वेत सूची के माध्यम से यह नहीं होगा सोच रहा हूँ के लिए किसी भी स्पष्ट कॉल की आवश्यकता नहीं है पसंद करते हैं, हो सकता है जाएगा वैकल्पिक चरित्र सेट या एन्कोडिंग के साथ कुछ करने के लिए?
मैं UTF-7 कमजोरियों परीक्षण किया है, लेकिन किसी भी है कि आधुनिक ब्राउज़रों को प्रभावित नहीं दिख रहा।
आधुनिक ब्राउज़र पर हैं जो एन्कोडिंग को utf-7 होने के लिए निर्दिष्ट करते हैं। उस स्थिति में एचटीएमएलकोडिंग में कोई फर्क नहीं पड़ता - इसलिए वहां समस्याएं हैं। यदि आप अपने पृष्ठों को utf-7 के रूप में निर्दिष्ट नहीं करते हैं, और कोई अन्य सीएसएस भेद्यता के माध्यम से आपके पृष्ठ में एक एन्कोडिंग प्रकार इंजेक्ट करने में सक्षम है - तो यह एक और हमला वेक्टर है। –
कुछ पुराने ब्राउज़रों पर अच्छी तरह से चीजें जीत जाएंगी, उदाहरण के लिए उच्चारण एस अक्षर, जहां आप ścript जा सकते हैं और यह एक स्क्रिप्ट टैग के रूप में कार्य करेगा। – blowdart
i77 हालांकि डिफ़ॉल्ट रूप से utf-7 के लिए डिफ़ॉल्ट है अगर इसे पहले 4000 बाइट्स में कोई utf-7 मिलता है? इसलिए यदि आप पहले 4000 में आईई 7 में यूटीएफ -7 इंजेक्ट कर सकते हैं, तो इसे निष्पादित किया गया है। यानी 8 + इसे अवरुद्ध करता है। –