CSP Analyzer
हर directive को सरल भाषा में समझा गया और हर जोखिम को गंभीरता से चिह्नित देखने के लिए एक Content-Security-Policy हेडर मान पेस्ट करें — सब आपके ब्राउज़र में।
CSP Analyzer आपकी Content-Security-Policy को पूरी तरह आपके ब्राउज़र में पार्स और स्कोर करता है। आपके द्वारा पेस्ट किया गया हेडर मान कभी आपके डिवाइस से बाहर नहीं जाता और कुछ भी ArrayKit पर अपलोड नहीं होता।
CSP Header Generator खोलें
CSP Analyzer के बारे में
CSP Analyzer एक Content-Security-Policy हेडर मान लेता है और उसे एक प्रति-directive तालिका में तोड़ता है, यह समझाते हुए कि हर directive किसे नियंत्रित करता है, सरल भाषा में। फिर यह उन कमज़ोरियों के लिए नीति का ऑडिट करता है जो चुपचाप CSP को हरा देती हैं: script sources में 'unsafe-inline' और 'unsafe-eval', शुद्ध '*' वाइल्डकार्ड, असुरक्षित http: origins, एक अत्यधिक व्यापक data: scheme, और default-src, object-src 'none', frame-ancestors, तथा base-uri जैसी छूटी हुई सख्ती। हर निष्कर्ष एक गंभीरता रखता है ताकि आप एक नज़र में देख सकें कि कोई नीति कसी हुई है या रिसाव वाली। यह तब उपयोगी है जब आप एक साइट को सख़्त कर रहे हों, किसी फ्रेमवर्क द्वारा आपके लिए जेनरेट की गई नीति की समीक्षा कर रहे हों, या डीबग कर रहे हों कि एक report-only CSP अभी भी inline scripts क्यों देती है। सब कुछ आपके डिवाइस पर पार्स और स्कोर होता है — आपके द्वारा पेस्ट किया गया हेडर कभी अपलोड नहीं होता।
विशेषताएँ
- किसी भी Content-Security-Policy मान को एक साफ़ प्रति-directive तालिका में पार्स करता है
- हर directive (script-src, frame-ancestors, base-uri…) को सरल भाषा में समझाता है
- script sources में 'unsafe-inline' और 'unsafe-eval' को उच्च जोखिम के रूप में चिह्नित करता है
- शुद्ध '*' वाइल्डकार्ड और असुरक्षित http: sources का पता लगाता है
- छूटे हुए default-src, object-src 'none', frame-ancestors, और base-uri पर चेतावनी देता है
- हर निष्कर्ष को एक गंभीरता (high / medium / low / OK) निर्दिष्ट करता है
- 'Content-Security-Policy:' हेडर नाम के साथ या बिना इनपुट स्वीकार करता है
- पूरी तरह आपके ब्राउज़र में चलता है — आपके द्वारा पेस्ट की गई नीति कभी आपके डिवाइस से बाहर नहीं जाती
CSP Analyzer का उपयोग कैसे करें
- अपने सर्वर कॉन्फ़िग या रिस्पॉन्स हेडर से Content-Security-Policy हेडर मान कॉपी करें
- इसे analyzer में पेस्ट करें (अग्रणी हेडर नाम वैकल्पिक है)
- हर directive क्या अनुमति देता है यह पुष्टि करने के लिए प्रति-directive तालिका पढ़ें
- निष्कर्षों के माध्यम से सबसे-खराब-पहले काम करें, और चिह्नित directive को कसें
उदाहरण
इनपुट
default-src 'self'; script-src 'self' 'unsafe-inline'; object-src 'none'
आउटपुट
HIGH script-src 'unsafe-inline' permits inline scripts
MED frame-ancestors missing — page can be framed (clickjacking)
OK object-src 'none' blocks plugins (recommended)
analyzer unsafe-inline को high के रूप में चिह्नित करता है, छूटे हुए frame-ancestors को नोट करता है, और object-src 'none' की पुष्टि करता है।
सामान्य त्रुटियाँ और समस्या निवारण
- नीति में script-src 'self' है लेकिन inline scripts अभी भी चलती हैं। — script-src (या इसके फ़ॉलबैक के रूप में default-src) में 'unsafe-inline' की जाँच करें। इसे हटाएँ और nonces या hashes पर स्विच करें ताकि केवल आपके inline ब्लॉक निष्पादित हों।
- analyzer चेतावनी देता है कि default-src छूट रहा है। — default-src अधिकांश fetch directive के लिए फ़ॉलबैक है। इसके बिना, कोई भी directive जिसे आपने स्पष्ट रूप से सूचीबद्ध नहीं किया वह अप्रतिबंधित है — default-src 'self' या 'none' जोड़ें।
- frame-ancestors चिह्नित है भले ही X-Frame-Options सेट है। — आधुनिक ब्राउज़र X-Frame-Options पर frame-ancestors को प्राथमिकता देते हैं। CSP में frame-ancestors 'self' या 'none' जोड़ें ताकि फ़्रेमिंग नीति द्वारा नियंत्रित हो।
- एक source में एक वाइल्डकार्ड '*' को एक जोखिम के रूप में रिपोर्ट किया जाता है। — '*' किसी भी origin से सामग्री की अनुमति देता है, उस directive के उद्देश्य को हराता है। इसे उन विशिष्ट https:// होस्ट से बदलें जिनसे आप वास्तव में लोड करते हैं।
अक्सर पूछे जाने वाले प्रश्न
- CSP Analyzer किसके लिए जाँच करता है?
- यह हर directive को पार्स करता है, समझाता है कि यह किसे नियंत्रित करता है, और सामान्य कमज़ोरियों को चिह्नित करता है: script sources में 'unsafe-inline' और 'unsafe-eval', शुद्ध '*' वाइल्डकार्ड, असुरक्षित http: origins, एक अत्यधिक व्यापक data: scheme, और छूटे हुए default-src, object-src 'none', frame-ancestors, तथा base-uri।
- 'unsafe-inline' को उच्च जोखिम के रूप में क्यों चिह्नित किया जाता है?
- 'unsafe-inline' inline <script> ब्लॉक और event-handler गुणों को चलने देता है, जो ठीक वही इंजेक्शन वेक्टर है जिसे CSP को ब्लॉक करना चाहिए। यह प्रभावी रूप से script-src को निष्प्रभावी कर देता है, इसलिए analyzer इसे एक उच्च-गंभीरता निष्कर्ष के रूप में मानता है और इसके बजाय nonces या hashes सुझाता है।
- क्या मुझे 'Content-Security-Policy:' हेडर नाम शामिल करने की आवश्यकता है?
- नहीं। आप या तो पूरी हेडर पंक्ति या केवल नीति मान पेस्ट कर सकते हैं। analyzer पार्स करने से पहले एक अग्रणी 'Content-Security-Policy:' या 'Content-Security-Policy-Report-Only:' प्रीफ़िक्स को स्वतः हटा देता है।
- analyzer एक छूटे हुए frame-ancestors के बारे में चेतावनी क्यों देता है?
- frame-ancestors के बिना, कोई भी साइट आपके पेज को एक iframe में एम्बेड कर सकती है, क्लिकजैकिंग को सक्षम करते हुए। frame-ancestors X-Frame-Options का आधुनिक प्रतिस्थापन है, इसलिए analyzer frame-ancestors 'self' या 'none' जोड़ने की अनुशंसा करता है।
- क्या यह सत्यापित करता है कि मेरी नीति वाक्यविन्यास की दृष्टि से एकदम सही है?
- यह सख्त व्याकरण के बजाय सुरक्षा मुद्रा पर ध्यान केंद्रित करता है। यह उन सामान्य आकारों को संभालता है जो ब्राउज़र स्वीकार करते हैं — स्पेस-से अलग किए sources के साथ semicolon-से अलग किए directive — और व्हाइटस्पेस पर नुक्ताचीनी करने के बजाय जोखिम भरे sources और छूटी हुई सख्ती की ओर इशारा करता है।
- क्या मेरे द्वारा पेस्ट किया गया CSP हेडर कहीं भेजा जाता है?
- नहीं। CSP Analyzer नीति को पूरी तरह आपके ब्राउज़र में पार्स और स्कोर करता है। आपके द्वारा पेस्ट किया गया हेडर मान आपके डिवाइस पर रहता है और कभी ArrayKit पर अपलोड नहीं होता।
संबंधित टूल
सभी ArrayKit टूल