Content Security Policy
सामग्री सुरक्षा नीति (सी. एस. पी.) एक कंप्यूटर सुरक्षा मानक है जिसे विश्वसनीय वेब पृष्ठ संदर्भ में दुर्भावनापूर्ण सामग्री के निष्पादन के परिणामस्वरूप क्रॉस-साइट स्क्रिप्टिंग (एक्स. एस. एस.), क्लिकजैकिंग और अन्य कोड इंजेक्शन हमलों को रोकने के लिए पेश किया गया है। यह वेब अनुप्रयोग सुरक्षा पर डब्ल्यू3सी कार्य समूह की एक उम्मीदवार अनुशंसा है, जो आधुनिक वेब ब्राउज़रों द्वारा व्यापक रूप से समर्थित है। सी. एस. पी. वेबसाइट मालिकों को उस सामग्री की अनुमोदित उत्पत्ति की घोषणा करने के लिए एक मानक विधि प्रदान करता है जिसे ब्राउज़र को उस वेबसाइट पर लोड करने की अनुमति दी जानी चाहिए-कवर किए गए प्रकार हैं जावास्क्रिप्ट, सी. एस. एस., एच. टी. एम. एल. फ्रेम, वेब कार्यकर्ता, फ़ॉन्ट, चित्र, एम्बेडेबल ऑब्जेक्ट जैसे जावा एपलेट, एक्टिवएक्स, ऑडियो और वीडियो फ़ाइल, और अन्य एच. टी. एम. एल. 5 सुविधाएँ। मानक, जिसे मूल रूप से सामग्री प्रतिबंध नाम दिया गया था, 2004 में रॉबर्ट हैनसेन द्वारा प्रस्तावित किया गया था, जिसे पहली बार फ़ायरफ़ॉक्स 4 में लागू किया गया था और जल्दी से अन्य ब्राउज़रों द्वारा उठाया गया था। मानक का संस्करण 1 2012 में डब्ल्यू3सी उम्मीदवार की सिफारिश के रूप में प्रकाशित किया गया था और 2014 में प्रकाशित आगे के संस्करणों (स्तर 2) के साथ, स्तर 3 का मसौदा वेब ब्राउज़रों द्वारा जल्दी से अपनाई जाने वाली नई सुविधाओं के साथ विकसित किया जा रहा है। प्रायोगिक सी. एस. पी. कार्यान्वयन के हिस्से के रूप में निम्नलिखित शीर्ष नाम उपयोग में हैंः सामग्री-सुरक्षा-नीति-डब्ल्यू3सी दस्तावेज़ द्वारा प्रस्तावित मानक शीर्ष नाम। गूगल क्रोम संस्करण 25 तक इसका समर्थन करता है। फ़ायरफ़ॉक्स 6 अगस्त 2013 को जारी किए गए संस्करण 23 के रूप में इसका समर्थन करता है। वेबकिट संस्करण 528 (रात का निर्माण) के रूप में इसका समर्थन करता है। क्रोमियम-आधारित माइक्रोसॉफ्ट एज समर्थन क्रोम के समान है। एक्स-वेबकिट-सी. एस. पी.-2011 में गूगल क्रोम, सफारी और अन्य वेबकिट-आधारित वेब ब्राउज़रों में अप्रचलित, प्रयोगात्मक हेडर पेश किया गया। एक्स-सामग्री-सुरक्षा-नीति-गेको 2 आधारित ब्राउज़रों (फ़ायरफ़ॉक्स 4 से फ़ायरफ़ॉक्स 22, थंडरबर्ड 3.3, सी-मंकी 2.1) में अप्रचलित, प्रयोगात्मक हेडर पेश किया गया। एक वेबसाइट कई सी. एस. पी. शीर्षकों की घोषणा कर सकती है, साथ ही प्रवर्तन और केवल रिपोर्ट करने वाले शीर्षकों को भी मिला सकती है। प्रत्येक हेडर को ब्राउज़र द्वारा अलग से संसाधित किया जाएगा। सी. एस. पी. को एच. टी. एम. एल. मेटा टैग का उपयोग करके एच. टी. एम. एल. कोड के भीतर भी वितरित किया जा सकता है, हालांकि इस मामले में इसकी प्रभावशीलता सीमित होगी। इंटरनेट एक्सप्लोरर 10 और इंटरनेट एक्सप्लोरर 11 भी सी. एस. पी. का समर्थन करते हैं, लेकिन प्रायोगिक एक्स-कंटेंट-सुरक्षा-नीति शीर्षलेख का उपयोग करके केवल सैंडबॉक्स निर्देश का समर्थन करते हैं। कई वेब अनुप्रयोग ढांचे सी. एस. पी. का समर्थन करते हैं, उदाहरण के लिए एंगुलरजे. एस. (मूल रूप से) और जांगो (मिडलवेयर)। रूबी ऑन रेल्स के लिए निर्देश गिटहब द्वारा पोस्ट किए गए हैं। वेब फ्रेमवर्क समर्थन की आवश्यकता केवल तभी होती है जब सी. एस. पी. सामग्री किसी भी तरह वेब अनुप्रयोग की स्थिति पर निर्भर करती है-जैसे कि गैर-मूल का उपयोग। अन्यथा, सी. एस. पी. अपेक्षाकृत स्थिर है और इसे अनुप्रयोग के ऊपर वेब अनुप्रयोग स्तरों से वितरित किया जा सकता है, उदाहरण के लिए लोड बैलेंसर या वेब सर्वर पर। बाइपास दिसंबर 2015 और दिसंबर 2016 में, 'गैर' अनुमत मूल को दरकिनार करने के कुछ तरीके प्रकाशित किए गए थे। जनवरी 2016 में, एक और विधि प्रकाशित की गई थी, जो सर्वर-व्यापी सी. एस. पी. का लाभ उठाती है जो एक ही सर्वर पर होस्ट किए गए जावास्क्रिप्ट पुस्तकालयों के पुराने और कमजोर संस्करणों का फायदा उठाने की अनुमति देती है (सी. डी. एन. सर्वर के साथ अक्सर मामला)। मई 2017 में वेब एप्लीकेशन फ्रेमवर्क कोड का उपयोग करके सी. एस. पी. को बायपास करने के लिए एक और विधि प्रकाशित की गई थी। संचालन का तरीका यदि सर्वर प्रतिक्रिया में सामग्री-सुरक्षा-नीति शीर्षलेख मौजूद है, तो एक अनुपालन ग्राहक घोषणात्मक अनुमति सूची नीति को लागू करता है। एक नीति का एक उदाहरण लक्ष्य कुछ क्रॉस-साइट स्क्रिप्टिंग हमलों को रोकने के लिए जावास्क्रिप्ट के लिए एक सख्त निष्पादन मोड है। व्यवहार में इसका मतलब है कि कई सुविधाएँ डिफ़ॉल्ट रूप से अक्षम हैंः इनलाइन जावास्क्रिप्ट कोड <स्क्रिप्ट> ब्लॉक, डीओएम इवेंट हैंडलर एचटीएमएल विशेषताओं के रूप में (जैसे। onclick) जावास्क्रिप्टः लिंक इनलाइन सी. एस. एस. कथन <शैली> एच. टी. एम. एल. तत्वों के लिए जिम्मेदार ब्लॉक शैली सेटटाइमआउट और सेटइंटेर्वल कार्यों के लिए गतिशील जावास्क्रिप्ट कोड मूल्यांकन मूल्यांकन () स्ट्रिंग तर्क नए फ़ंक्शन () निर्माता गतिशील सी. एस. एस. कथन CSSStyleSheet.insertRule () विधि जबकि एक नए अनुप्रयोग में सी. एस. पी. का उपयोग करना काफी सीधा हो सकता है, विशेष रूप से सी. एस. पी.-संगत जावास्क्रिप्ट ढांचे के साथ, मौजूदा अनुप्रयोगों को कुछ रीफैक्टरिंग-या नीति को शिथिल करने की आवश्यकता हो सकती है। सी. एस. पी.-संगत वेब अनुप्रयोगों के लिए अनुशंसित कोडिंग अभ्यास बाहरी स्रोत फ़ाइलों (<स्क्रिप्ट एस. आर. सी.>) से कोड लोड करना, इसका मूल्यांकन करने के बजाय जे. एस. ओ. एन. को पार्स करना और इवेंट हैंडलर सेट करने के लिए EventTarget.addEventListener () का उपयोग करना है। नोट्स रिपोर्टिंग जब भी कोई अनुरोधित संसाधन या स्क्रिप्ट निष्पादन नीति का उल्लंघन करता है, तो ब्राउज़र उल्लंघन के विवरण वाले रिपोर्ट-यूरी या रिपोर्ट-टू में निर्दिष्ट मूल्य पर एक पोस्ट अनुरोध करेगा। सी. एस. पी. रिपोर्ट मानक जे. एस. ओ. एन. संरचनाएँ हैं और इन्हें या तो अनुप्रयोग के अपने ए. पी. आई. या सार्वजनिक सी. एस. पी. रिपोर्ट प्राप्तकर्ताओं द्वारा लिया जा सकता है। 2018 में सुरक्षा शोधकर्ताओं ने दिखाया कि रिपोर्ट-यूरी में निर्दिष्ट नामित प्राप्तकर्ता को गलत सकारात्मक रिपोर्ट कैसे भेजी जाती है। यह संभावित हमलावरों को मनमाने ढंग से उन अलार्मों को ट्रिगर करने की अनुमति देता है और वास्तविक हमले के मामले में उन्हें कम उपयोगी बना सकता है। इस व्यवहार का इरादा है और इसे ठीक नहीं किया जा सकता है, क्योंकि ब्राउज़र (क्लाइंट) रिपोर्ट भेज रहा है। ब्राउज़र ऐड-ऑन और एक्सटेंशन छूट मूल सी. एस. पी. (1) प्रसंस्करण मॉडल (2012-2013) के अनुसार, सी. एस. पी. को उपयोगकर्ता द्वारा स्थापित ब्राउज़र ऐड-ऑन या एक्सटेंशन के संचालन में हस्तक्षेप नहीं करना चाहिए। सी. एस. पी. की यह विशेषता प्रभावी रूप से किसी भी ऐड-ऑन, एक्सटेंशन या बुकमार्कलेट को वेब साइटों में स्क्रिप्ट डालने की अनुमति देती, चाहे उस स्क्रिप्ट की उत्पत्ति कुछ भी हो, और इस प्रकार सी. एस. पी. नीतियों से छूट दी जाती। हालाँकि, इस नीति को निम्नलिखित शब्दों के साथ संशोधित किया गया है (सी. एस. पी. 1.1 के अनुसार)। ध्यान दें कि पूर्व निरपेक्ष "चाहिए (नहीं)" शब्दों के बजाय "हो सकता है" शब्द का उपयोगः नोटः उपयोगकर्ता एजेंट उपयोगकर्ताओं को उपयोगकर्ता प्राथमिकताओं, बुकमार्कलेट, उपयोगकर्ता एजेंट के लिए तीसरे पक्ष के परिवर्धन के माध्यम से नीति प्रवर्तन को संशोधित या बायपास करने की अनुमति दे सकते हैं, और इस तरह के अन्य mechanisms.The निरपेक्ष "चाहिए" शब्दों का उपयोग ब्राउज़र उपयोगकर्ताओं द्वारा नीति के पालन का अनुरोध/मांग करने के लिए किया जा रहा था और इसका समर्थन करने के लिए लोकप्रिय ब्राउज़रों (फ़ायरफ़ॉक्स, क्रोम, सफारी) में परिवर्तन स्थापित किए गए हैं। यह विशेष रूप से विवादास्पद था जब ट्विटर और गिटहब जैसी साइटों ने मजबूत सी. एस. पी. नीतियों का उपयोग करना शुरू कर दिया, जिसने बुकमार्कलेट के उपयोग को 'तोड़' दिया। डब्ल्यू3सी वेब एप्लिकेशन सुरक्षा कार्य समूह इस तरह की स्क्रिप्ट को ब्राउज़र द्वारा लागू किए गए विश्वसनीय कम्प्यूटिंग आधार का हिस्सा मानता है; हालाँकि, कॉक्स कम्युनिकेशंस के एक प्रतिनिधि द्वारा कार्य समूह को यह तर्क दिया गया है कि यह छूट एक संभावित सुरक्षा छेद है जिसका दुर्भावनापूर्ण या समझौता किए गए ऐड-ऑन या एक्सटेंशन द्वारा शोषण किया जा सकता है। डब्ल्यू3सी द्वारा कई नए ब्राउज़र सुरक्षा मानकों का प्रस्ताव किया जा रहा है, जिनमें से अधिकांश सी. एस. पी. के पूरक हैंः यह सुनिश्चित करने के लिए कि केवल ज्ञात, विश्वसनीय संसाधन फ़ाइलों (आमतौर पर जावास्क्रिप्ट, सी. एस. एस.) को तीसरे पक्ष के सर्वरों (आमतौर पर सी. डी. एन.) से लोड किया जाता है, सबसोर्स इंटीग्रिटी (एस. आर. आई.) मिश्रित सामग्री, एच. टी. टी. पी. एस. पर लोड किए गए पृष्ठों पर इच्छित ब्राउज़र की नीति को स्पष्ट करने और सादे पाठ पर सामग्री को जोड़ने के लिए एच. टी. टी. पी. अपग्रेड असुरक्षित अनुरोध, ब्राउज़रों को एच. टी. टी. पी. एस. क्रेडेंशियल मैनेजमेंट में स्थानांतरित पृष्ठों पर विरासत लिंक को कैसे संभालना है, जटिल लॉगिन योजनाओं को सुविधाजनक बनाने के लिए उपयोगकर्ता की साख तक पहुँचने के लिए एक एकीकृत जावास्क्रिप्ट एपीआई, रेफरर समान मूल नीति नोस्क्रिप्ट-एंटी-एक्सएसएस प्रोटेक्शन एंड एप्लीकेशन बाउंड्रीज एनफोर्सर (एबीई), फायरफॉक्स एचटीटीपी स्विचबोर्ड के लिए विस्तार-उपयोगकर्ता परिभाषित सीएसपी नियम, गूगल क्रोम और ओपेरा एचटीटीपी के लिए विस्तार सख्त परिवहन सुरक्षा एचटीटीपी सार्वजनिक कुंजी पिनिंग संदर्भ बाहरी लिंक सामग्री सुरक्षा नीति डब्ल्यू3सी कार्य मसौदा सामग्री सुरक्षा नीति के लिए सुरक्षित कोडिंग दिशानिर्देश एम. डी. एन. वेब डॉक्स पर सामग्री सुरक्षा नीति सामग्री सुरक्षा नीति (सी. एस. पी.) कंप्यूटर सुरक्षा मानक हैकिंग (कंप्यूटर सुरक्षा) हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल हेडर वेब अनुप्रयोग वेब सुरक्षा कारनाम