HTML एंटिटी
मार्कअप अक्षरों को एस्केप करें ताकि वे टेक्स्ट की तरह दिखें, या उन्हें वापस डिकोड करें।
- आपके ब्राउज़र में चलता है — आपका टेक्स्ट कहीं नहीं भेजा जाता
- न साइन-अप, न सीमा, जितनी बार चाहें मुफ़्त इस्तेमाल करें
यह कैसे काम करता है
बिना एस्केप किए अविश्वसनीय टेक्स्ट को वेब पेज में डालना ही क्रॉस-साइट स्क्रिप्टिंग की वजह बनता है। एनकोडिंग उन अक्षरों को एंटिटी में बदल देती है जिन्हें ब्राउज़र मार्कअप मानता है, ताकि वे चलने के बजाय सिर्फ़ दिखाए जाएँ।
क्या एनकोड होता है
वे पाँच अक्षर जो मायने रखते हैं: एम्परसैंड, छोटा-से, बड़ा-से, डबल कोट और एपॉस्ट्रोफ़ी। एम्परसैंड को सबसे पहले एनकोड करना ज़रूरी है, वरना उसके बाद की हर चीज़ दोबारा एनकोड हो जाती है।
डिकोडिंग
डिकोडिंग नामित और संख्यात्मक एंटिटी को तालिका के बजाय ब्राउज़र पार्सर से वापस अक्षरों में बदलती है, इसलिए पूरा सेट सही ढंग से संभाला जाता है।
ठीक-ठीक क्या एनकोड होता है
एनकोडिंग पाँच अक्षर बदलती है: & बनता है &, < बनता है <, > बनता है >, " बनता है " और ' बनता है '। HTML के अंदर और कोट वाले एट्रिब्यूट के भीतर टेक्स्ट को सुरक्षित रूप से दिखाने के लिए इतना काफ़ी है। उच्चारण चिह्न वाले अक्षर और इमोजी जैसे हैं वैसे छोड़ दिए जाते हैं, क्योंकि UTF-8 पेज उन्हें सीधे दिखाते हैं।
डिकोडिंग
डिकोडिंग HTML की परिभाषित हर नामित एंटिटी समझती है, जैसे é, — और , साथ ही दशमलव या hex में संख्यात्मक एंटिटी (é, é), क्योंकि वह आपके ब्राउज़र के अपने HTML पार्सर का इस्तेमाल करती है।
HTML एंटिटी — सवाल
क्या इससे मेरी साइट XSS से सुरक्षित हो जाती है?
आउटपुट को एस्केप करना इसका ज़रूरी हिस्सा है, लेकिन सुरक्षा सही संदर्भ में एस्केप करने पर निर्भर करती है। जहाँ आपके पास फ़्रेमवर्क है, वहाँ उसका एस्केपिंग इस्तेमाल करें।
यह कौन से अक्षर एनकोड करता है?
एम्परसैंड, छोटा-से, बड़ा-से, डबल कोट और एपॉस्ट्रोफ़ी — वे अक्षर जिन्हें ब्राउज़र वरना मार्कअप समझ लेता।
क्या मेरा टेक्स्ट अपलोड होता है?
नहीं। एनकोडिंग पेज में ही चलती है।