मेरे पास एक ऐसा पृष्ठ है जिस पर अनुरोध किया गया है कि मैं सीएसएस के माध्यम से कुछ उपयोगकर्ता अनुकूलन की अनुमति देता हूं।उपयोगकर्ता द्वारा जोड़े गए बाहरी सीएसएस (माइस्पेस की तरह) के साथ सुरक्षा का प्रबंधन कैसे करें
मुझे यह करने में खुशी है, लेकिन यह समझने की कोशिश कर रहा हूं कि इसे कैसे सुरक्षित किया जाए। ऐसी कई स्टाइलशीट नहीं हैं जो पृष्ठ पर लागू होंगी, लेकिन मैंने मूल रूप से सोचा था कि अगर मैंने अभी जांच की है कि पृष्ठ एक सीएसएस एक्सटेंशन था जो मैं सुरक्षित रहूंगा।
हालांकि, मैंने जो शोध किया है, वह दिखाता है कि xss सीएसएस के माध्यम से करना आसान है। लेकिन मैं उपयोगकर्ता द्वारा उत्पन्न बाहरी सीएसएस को सुरक्षित रूप से शामिल करने की अनुमति देने के तरीके पर कोई भी पुनर्विक्रय नहीं ढूंढ पाया है।
क्या किसी के पास इसके लिए कोई सुझाव या संसाधन हैं?
माइस्पेस कुछ अन्य साइटों के साथ ऐसा करने का प्रबंधन करता है, लेकिन मैं यह नहीं देख सकता कि यह सुरक्षित कैसे होगा।
मेरे पास उस पृष्ठ पर कोई 'सुरक्षित' उपयोगकर्ता डेटा नहीं है जहां बाहरी सीएसएस जाता है। लेकिन मुझे एक खोज के लिए कुछ चर मिलते हैं।
---------------- sliky की प्रतिक्रिया के बाद अतिरिक्त डेटा ----------------------
मैं प्रत्येक उपयोगकर्ता को बाहरी सीएसएस जोड़ने के लिए सक्षम करने की योजना नहीं बना रहा हूं। हालांकि, सीएसएस वैरिएबल को विशेष योग्य उपयोगकर्ताओं द्वारा सेट किया जा सकता है, और एक बार जब वेरिएबल उपलब्ध हो जाता है, तो अनिवार्य रूप से कोई भी इसे सेट कर सकता है। उपयोग में उस चर को प्राप्त करने का एकमात्र तरीका यूआरएल को स्वयं फैलाना है, इसलिए शायद मैं सुरक्षा से चिंतित हूं, लेकिन मुझे शक है।
मैं इसे सेट कर सकता हूं ताकि पृष्ठ बाहरी स्टाइलशीट से अनुक्रमित न हो, लेकिन अभी भी अंतिम उपयोगकर्ता के लिए सुरक्षा को बनाए रखने के बारे में चिंतित है।
मैं जहाँ उपयोगकर्ताओं को मैं अलग सीएसएस अपने पृष्ठों के लिए बनाई गई लिंक सक्षम करने के लिए है की अनुमति देते हैं, जहां यह http://mysite.com/page?useracct=12343&extcss=http://location/of/css.css
मैं सेट अप useracct होगा अपनी साइट पर एक लिंक है, इसलिए केवल होगा। मेरी साइट पर, मैं उन उपयोगकर्ताओं के खाते को सीएसएस पेज से लिंक करूंगा।
तो किसी को सिर्फ साथ नहीं आते हैं और कहते हैं कि http://mysite.com/page?extcss=http://new/dangerous/css.css
हालांकि, वे लिंक http://mysite.com/page?useracct=12343&extcss=http://new/dangerous/css.css एक ही तरीका है किसी को उस पृष्ठ पर जाने हैं बना सकते हैं हो सकता है अगर कि जो व्यक्ति खतरनाक सीएसएस बनाया अग्रेषित कर सकते हैं साथ कि लिंक।
मुझे लगता है कि अगर मैंने एक्सटीसीएसएस को धोया और नमकीन किया, तो यह अधिक सुरक्षित हो सकता है। शायद यह जाने का सबसे अच्छा तरीका है?
बहुत जानकारीपूर्ण प्रतिक्रिया एडेन, और सीएसएस पार्सर पर लिंक के लिए धन्यवाद। मुझे नहीं लगता कि उपयोगकर्ता अपलोड xml + छवियों को वे वास्तव में देख रहे हैं। बस कुछ सरल शैलियों को लागू करने की कोशिश कर रहे हैं, और पोजिशनिंग के लिए, मैं हमेशा अपनी स्टाइलशीट को शामिल करता हूं, ताकि किसी भी फ़्लोटिंग/जेड-इंडेक्स इत्यादि को संभाला जा सके क्योंकि सभी तत्व पोजिशनिंग उपयोगकर्ता सामग्री पोस्ट कर दी गई है। यह ज्यादातर मामूली आकार, रंग और पृष्ठभूमि छवियों को समायोजित कर सकता है। 'यह इससे ज्यादा कठिन हो सकता है' और बोल्ड 'गुड लक' क्या आप सुझाव दे रहे हैं कि शायद मुझे ऐसा नहीं करना चाहिए? – pedalpete
बिलकुल नहीं, बस याद रखें कि चीजें जैसे महत्वपूर्ण और अन्य अस्पष्ट चीजें आपको बम में काट सकती हैं यदि आप उपयोगकर्ताओं को सीएसएस (या उस मामले के लिए कोई सामग्री) अपलोड करने देते हैं। इसे लगभग गणितीय बनाएं ... उन सभी उपलब्ध वाक्यविन्यासों के क्रमिक कार्य करें जिन्हें आप अवरुद्ध करना चाहते हैं और परीक्षण करते हैं कि यह काम करता है। इस पर निर्भर करता है कि इनपुट को कितना महत्वपूर्ण है ... अगर यह दोस्तों के लिए एक छोटी सी साइट है, तो आप थोड़ा आराम कर सकते हैं :) इसके लिए जाओ मैं कहता हूं! –