एक्स-सामग्री-प्रकार-विकल्प क्या करता है?

click fraud protection

सुरक्षा शीर्षलेख HTTP प्रतिक्रिया शीर्षलेख का एक सबसेट है जिसे वेब सर्वर द्वारा सेट किया जा सकता है जो प्रत्येक ब्राउज़र में सुरक्षा नियंत्रण लागू करता है। HTTP हेडर वेब अनुरोधों और प्रतिक्रियाओं के साथ भेजे गए मेटाडेटा का एक रूप है। सुरक्षा हेडर "X-Content-Type-Options" ब्राउज़र को MIME सूँघने से रोकता है।

नोट: HTTP शीर्षलेख HTTP के लिए विशिष्ट नहीं हैं और HTTPS में भी उपयोग किए जाते हैं।

माइम सूँघना क्या है?

जब कोई डेटा वेब पर भेजा जाता है, तो इसमें शामिल मेटाडेटा के टुकड़ों में से एक MIME प्रकार होता है। बहुउद्देशीय इंटरनेट मेल एक्सटेंशन, या MIME प्रकार एक मानक हैं जिनका उपयोग फ़ाइल में डेटा के प्रकार को परिभाषित करने के लिए किया जाता है, जो इंगित करता है कि फ़ाइल को कैसे संभाला जाना चाहिए। आमतौर पर, MIME- प्रकार में एक वैकल्पिक पैरामीटर और मान के साथ एक प्रकार और उपप्रकार होता है। उदाहरण के लिए, UTF-8 टेक्स्ट फ़ाइल में MIME प्रकार “टेक्स्ट/सादा; चारसेट = UTF-8"। उस उदाहरण में, प्रकार "पाठ" है, उप प्रकार "सादा" है, पैरामीटर "वर्णसेट" है, और मान "यूटीएफ -8" है।

फाइलों की गलत लेबलिंग और गलत प्रबंधन को रोकने के लिए, वेब सर्वर आमतौर पर MIME सूँघने का कार्य करते हैं। यह एक ऐसी प्रक्रिया है जहां स्पष्ट रूप से बताए गए MIME- प्रकार को अनदेखा किया जाता है, और इसके बजाय, फ़ाइल की शुरुआत का विश्लेषण किया जाता है। अधिकांश फ़ाइल प्रकारों में शीर्षलेख अनुक्रम शामिल होते हैं जो इंगित करते हैं कि यह किस प्रकार की फ़ाइल है। अधिकांश समय, MIME प्रकार सही होते हैं, और फ़ाइल को सूँघने से कोई फर्क नहीं पड़ता है। यदि कोई अंतर है, तो वेबसर्वर स्नीफ्ड फ़ाइल प्रकार का उपयोग यह निर्धारित करने के लिए करेंगे कि घोषित MIME प्रकार के बजाय फ़ाइल को कैसे संभालना है।

समस्या तब होती है जब कोई हमलावर पीएनजी छवि जैसी फ़ाइल अपलोड करने का प्रबंधन करता है, लेकिन फ़ाइल वास्तव में जावास्क्रिप्ट कोड की तरह कुछ और है। समान फ़ाइल प्रकारों के लिए, जैसे कि दो पाठ प्रकार यह बहुत अधिक समस्या का कारण नहीं बन सकता है। यह एक गंभीर मुद्दा बन जाता है, हालांकि, अगर पूरी तरह से सहज फ़ाइल को इसके बजाय निष्पादित किया जा सकता है।

एक्स-सामग्री-प्रकार-विकल्प क्या करता है?

X-Content-Type-Options शीर्षलेख में केवल एक संभावित मान होता है "X-Content-Type-Options: nosniff"। इसे सक्षम करने से उपयोगकर्ता के ब्राउज़र को सूचित किया जाता है कि उसे MIME प्रकार की सूंघना नहीं करनी चाहिए और इसके बजाय स्पष्ट रूप से घोषित मूल्य पर निर्भर रहना चाहिए। इस सेटिंग के बिना, यदि कोई दुर्भावनापूर्ण JavaScript फ़ाइल PNG जैसी छवि के रूप में प्रच्छन्न थी, तो JavaScript फ़ाइल निष्पादित की जाएगी। X-Content-Type-Options सक्षम होने पर फ़ाइल को एक ऐसी छवि के रूप में माना जाएगा जो लोड होने में विफल रहती है क्योंकि फ़ाइल एक मान्य छवि प्रारूप नहीं है।

X-Content-Type-Options ऐसी वेबसाइट पर विशेष रूप से आवश्यक नहीं है जो पूरी तरह से प्रथम-पक्ष संसाधनों का उपयोग करती है, क्योंकि गलती से किसी दुर्भावनापूर्ण फ़ाइल के प्रस्तुत होने की कोई संभावना नहीं है। यदि कोई वेबसाइट बाहरी, या उपयोगकर्ता द्वारा सबमिट किए गए संसाधनों जैसे तृतीय-पक्ष सामग्री का उपयोग करती है, तो X-Content-Type-Options इस प्रकार के हमले से सुरक्षा प्रदान करता है।