आप की कोशिश कर सकते हैं:
function checkInput(string) {
var regex = /^[^0-9*\\\^\/<>_#']+$/;
if(regex.test(string)) {
return true;
} else {
return false;
}
}
इस प्रकार आप पता पत्र XSS हमलों के लिए इस्तेमाल किया जाता है या नहीं और फिर, बस प्रपत्र
ऊपर के बजाय भेज मैं भी इस का उपयोग न फॉर्मों के सत्यापन के लिए कार्य:
checkField:function(string, type) {
var regex;
switch (type) {
case "number":
regex = /^[\d]+$/;
break;
case "string":
regex = /^[^0-9*\\\^\/<>_#']+$/;
break;
case "email":
regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,7})+$/;
break;
}
if (regex.test(string)) {
return true;
}
return false;
},
जहां आप जितना चाहें उतने मामलों को जोड़ सकते हैं और इसकी आवश्यकता है। मुझे आशा है कि यह किसी भी तरह
में तुम्हारी मदद कर सकता लेकिन XSS हमलों की 100% सुरक्षित होने के लिए आपको सर्वर पर प्रपत्र मान्य करने के लिए है, इसलिए मैं 2 सरल नियमों का पालन करें:
नियम नंबर एक: कभी नहीं प्रपत्र data' का उपयोग अनचेक
नियम संख्या दो: स्क्रिप्ट या कोड को <%>/\ और
पर
पर कभी भी फॉर्म डेटा का उपयोग न करें, क्योंकि मैं आपके फॉर्म को कॉपी कर सकता हूं और इसे सटीक पते पर भेज सकता हूं, मैं बाईपास करूंगा एक क्लाइंट साइड चेक/सत्यापन लेकिन आपके मामले के लिए, क्योंकि आप कहीं और फॉर्म नहीं भेजते हैं, इसलिए कोड दर्ज करने की रोकथाम पर्याप्त होनी चाहिए
यूपी तिथि:
जावास्क्रिप्ट सिर्फ उदाहरण
(+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+([][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[[+!+[]]+[!+[]+!+[]+!+[]+!+[]]]+[+!+[]]+([][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!+[]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!+[]+[])[+[]]+(!+[]+[])[!+[]+!+[]+!+[]]+(!+[]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]])()
जो चेतावनी विंडो में 1 बाहर दे देंगे के लिए, brainfuck आधार पर कुछ फैंसी XSS हमलों को संकलित करता है ...
उन उपयोग किए गए अक्षरों में अच्छी तरह से जाँच की जानी चाहिए
हाय! Stackoverflow में आपका स्वागत है! मैंने आपका प्रश्न संपादित कर लिया है, आपको बाहरी प्रश्न के बजाय कोड को अपने प्रश्न में रखना चाहिए: डी – Zorgatone
यह xSS के लिए _really_ कमजोर नहीं है क्योंकि कोई भी टेक्स्ट दर्ज नहीं कर सकता है और उपयोगकर्ता से अलग बटन पर क्लिक कर सकता है। यह एक तरह का ["स्वयं एक्सएसएस"] (https://en.wikipedia.org/wiki/Self-XSS) मुझे लगता है, लेकिन फिर वे डेवलपर टूल के माध्यम से ऐसा कर सकते हैं। – SilverlightFox
हां, यह संग्रहीत एक्सएसएस के लिए कमजोर नहीं है, लेकिन स्वयं एक्सएसएस। लेकिन एक डेवलपर के रूप में, हमें भी इसे रोकने की ज़रूरत है :) @ सिल्वरलाइटफॉक्स –