this question के समान है, लेकिन मुझे इस बात की परवाह नहीं है कि कौन से वर्ण त्रुटि को आग लगेंगे/नहीं करेंगे। मैं अधिक उत्सुक हूं कि मैं किस विधि को कॉल कर सकता हूं, खुद को जांचने के लिए, यदि वर्तमान स्ट्रिंग उपरोक्त त्रुटि संदेश को आग लग जाएगी।यह जांचने के लिए कि क्या स्ट्रिंग आग लगती है "एक संभावित खतरनाक अनुरोध। फॉर्म मान पता चला ..." त्रुटि
कुछ पृष्ठभूमि देने के लिए, जब कोई उपयोगकर्ता उन्हें भूल जाता है और रीसेट की आवश्यकता होती है तो मैं यादृच्छिक पासवर्ड बना रहा हूं। दुर्भाग्य से, यादृच्छिक पासवर्ड जेनरेटर ने "गलती से" इसे हाल ही में &#
के साथ बनाया है। इसने पृष्ठ को तोड़ने का कारण बना दिया जब उपयोगकर्ता ने इसके साथ लॉगिन करने का प्रयास किया।
इस विषय के आसपास पदों की प्रचुर मात्रा में उल्लेख किया है, ValidateRequest=false
(या .NET 4.0 के लिए <httpRuntime requestValidationMode="2.0" />
) इन कारनामों के लिए जाँच नेट बंद करने के लिए इस्तेमाल किया जा सकता है, लेकिन मैं किसी भी कारण की इस अतिरिक्त परत खोने के लिए नहीं दिख रहा है सुरक्षा जब मैं पहली जगह में स्ट्रिंग बना रहा हूं। और बस एक अपूर्ण सूची (<
, &#
, आदि) पर पुनः यादृच्छिक करने के लिए यादृच्छिक जनरेटर को स्पष्ट रूप से बताएं, यह सबसे साफ समाधान की तरह प्रतीत नहीं होता है, इसलिए मैं जांच कर रहा हूं कि .NET का उपयोग करने के समान तरीके का उपयोग करना है।
माइक्रोसॉफ्ट के स्पष्टीकरण का क्या सवाल है और उनके खिलाफ सुरक्षा के लिए क्या किया जा रहा है here।
This guy प्रतिबिंबक के साथ खुदाई के बाद IsDangerousString
नामक फ़ंक्शन खोजने के बारे में वार्ता, लेकिन मैं इसका उपयोग करने के लिए इस फ़ंक्शन को नहीं ढूंढ पा रहा हूं। इसके अलावा वह .NET 1.1 का जिक्र कर रहा है और मैं .NET 3.5
दिलचस्प सवाल है, लेकिन मैं एक कारण है कि आप इस तरह के अस्पष्ट अक्षर शामिल हैं नहीं दिख रहा। मैं शायद बाइट [] भरने के लिए RandomNumberGenerator क्लास का उपयोग करता हूं और फिर बाइट को स्ट्रिंग में एन्कोड करने के लिए z-base32 एन्कोडर का उपयोग करता हूं। – Shelakel
आप "शोषण" चरित्र को जानते हैं जिसे आप अनुमति देना चाहते हैं क्यों एचटीएमएल उन्हें पोस्ट से पहले एनकोड नहीं करता है और फिर एचटीएमएल उन्हें वापस डीकोड करता है – HatSoft
@ शेलकेल निश्चित रूप से, यादृच्छिक पासवर्ड उत्पन्न करने के कई अन्य तरीके हैं। दुर्भाग्यवश, हालांकि, हम इस परियोजना के लिए पासवर्ड के साथ 4 वर्ण नियमों (लोअरकेस, अपरकेस, संख्या, विशेष चार) को पूरा करने के लिए आवश्यक हैं। बेशक, मैं केवल अपमानजनक "अस्पष्ट" पात्रों को हटा सकता हूं, लेकिन चूंकि कल्पना बहुत स्पष्ट नहीं है क्योंकि मैं उसी कार्य का उपयोग करना चाहता हूं जो सिस्टम को जांचना है। – Mercurybullet