मुझे एक टेक्स्टरेरा मिला जहां उपयोगकर्ता एक लेख लिख सकता है। लेख में टेक्स्ट (बोल्ड और इटैलिक), लिंक और यूट्यूब वीडियो शामिल हो सकते हैं। मैं उन कुछ HTML टैग्स को कैसे अनुमति दूं और अभी भी सुरक्षित xss-preventing कोड पोस्ट करूं?कुछ एचटीएमएल टैग कैसे अनुमति दें?
उत्तर
मैं HTMLPurifier का प्रयोग करेंगे, यह सुनिश्चित करें कि आप केवल HTML रखने
- कि वैध
- और केवल टैग हैं और विशेषताएँ आप
मैं चाहिए अनुमति देने के लिए चुना गया है जोड़ें कि PHP strip_tags()
फ़ंक्शन प्रदान करता है, लेकिन यह अच्छा नहीं है (उद्धरण):
क्योंकि
strip_tags()
वास्तव में HTML, आंशिक या टूटी हुई टैग को मान्य नहीं करता है जिसके परिणामस्वरूप अधिक टेक्स्ट/डेटा को अपेक्षा से हटाया जा सकता है।
इस समारोह टैग कि आपallowable_tags
का उपयोग करने दें, शैली सहित और onmouseover जिम्मेदार बताते हैं जब पाठ पोस्टिंग कि अन्य उपयोगकर्ताओं को दिखाया जाएगा एक शरारती उपयोगकर्ता का दुरुपयोग हो सकता है कि इस पर कोई गुण संशोधित नहीं करता है।
यदि आप असली एक्सएसएस सुरक्षा की तलाश में हैं तो मैं HTMLPurifier का उपयोग करने का सुझाव देता हूं। ऐसा करना असंभव नहीं है अगर इसे करना मुश्किल है। और इसमें गलतियों (/ छेद) होने के लिए बाध्य है।
- 1. कुछ एचटीएमएल टैग
- 2. एचटीएमएल शोधक - डिफ़ॉल्ट अनुमति बदलें एचटीएमएल टैग कॉन्फ़िगरेशन
- 3. अनुमति दें - नियमित अभिव्यक्ति
- 4. अनुमति दें प्रमाणीकरण
- 5. रेगेक्स: कुछ चयनित वर्णों के अलावा सबकुछ अनुमति दें
- 6. गिटिग्नोर - केवल कुछ एक्सटेंशन और फ़ाइलों को अनुमति दें
- 7. अनुमति दें UIWebView
- 8. विम में एचटीएमएल टैग के बीच कुछ पेस्ट कैसे करें?
- 9. एचटीएमएल-टैग
- 10. एचटीएमएल टैग
- 11. कुछ टैग
- 12. एचटीएमएल 5 ऑडियो टैग
- 13. उपयोगकर्ता आयनिस स्तर की अनुमति कैसे दें?
- 14. एसक्यूएल सर्वर: स्कीमा की अनुमति कैसे दें?
- 15. web2py - बाहरी पहुंच की अनुमति दें - कैसे?
- 16. एचटीएमएल टैग
- 17. क्या एचटीएमएल में कई शीर्षक टैग होने की अनुमति है?
- 18. एचटीएमएल टैग
- 19. एचटीएमएल टैग
- 20. एचटीएमएल टैग
- 21. टोमकैट पर क्रॉस डोमेन अनुरोधों को कैसे अनुमति दें?
- 22. कॉन्फ़िगर एचटीएमएल मांगपत्र टैग और नोटपैड में और कुछ नहीं ++
- 23. एचटीएमएल डाउनलोड टैग
- 24. सभी एचटीएमएल टैग
- 25. एचटीएमएल div टैग
- 26. एचटीएमएल टैग जावास्क्रिप्ट
- 27. कुछ प्रश्नों को प्राथमिकता कैसे दें?
- 28. विम: एचटीएमएल टैग
- 29. PHP: एचटीएमएल 5 टैग
- 30. डबल यूआरएल एनकोडेड अनुरोध पथ मान्य होने की अनुमति दें
स्ट्रिप_टैग() नोट्स उद्धरण के लिए +1 –
Thx! लगता है कि htmlpurifier जाने का रास्ता है। केवल स्पष्ट करने हेतु; htmlpurifier xss, sql इंजेक्शन और अन्य सभी खतरनाक कोड रोकता है? – Michael
मैंने उपयोगकर्ता-इनपुट को साफ करने के लिए इसे दो बार उपयोग किया है और सुनिश्चित करें कि इसमें केवल टैग शामिल हैं जिन्हें मैंने अनुमति देने के लिए चुना था; यदि आप अनुमत टैग/विशेषताओं को ध्यान से चुनते हैं, तो यह एक्सएसएस को रोक देगा। लेकिन यह एसक्यूएल इंजेक्शन के बारे में कुछ भी नहीं करेगा: ये एक और समस्या है, जो आप यह सुनिश्चित करके हल करेंगे कि आपने SQL क्वेरी में जो रखा है वह सुरक्षित है * (पूर्णांक पूर्णांक होना चाहिए, तारों को ठीक से बचाना चाहिए, या आपको चाहिए तैयार कथन का उपयोग करें) * –