निजी नेटवर्क का ऐक्सेस: वेब वर्कर और नेविगेशन फ़ेच के लिए बेहतर सुरक्षा

Jonathan Hao
Jonathan Hao

निजी नेटवर्क का ऐक्सेस क्या है?

प्राइवेट नेटवर्क ऐक्सेस (पीएनए को पहले सीओआरएस-आरएफ़सी1918 और कम शब्दों में लोकल नेटवर्क ऐक्सेस के नाम से जाना जाता था), सुरक्षा की एक सुविधा है. इसकी मदद से, वेबसाइटें निजी नेटवर्क पर सर्वर को अनुरोध नहीं भेज पाती हैं. इससे उपयोगकर्ताओं और इंटरनल नेटवर्क को, क्रॉस-साइट अनुरोध जालसाज़ी (सीएसआरएफ़) जैसे संभावित हमलों से बचाने में मदद मिलती है. Chrome में पीएनए को धीरे-धीरे लागू किया जा रहा है और आने वाली रिलीज़ में सुरक्षा को और बढ़ाया जाएगा.

पीएनए की अहम सुरक्षाएं (उनकी मौजूदा स्थिति के साथ)

  • सुरक्षित कॉन्टेक्स्ट: सिर्फ़ सुरक्षित कॉन्टेक्स्ट ही निजी नेटवर्क के सबरिसॉर्स के अनुरोध कर सकते हैं. ये अनुरोध Chrome 94 के बाद से लागू किए गए हैं. ज़्यादा जानकारी के लिए, प्राइवेट नेटवर्क ऐक्सेस के बारे में अपडेट पोस्ट पढ़ें.
  • प्रीफ़्लाइट अनुरोध: Chrome, सर्वर की अनुमतियों की जांच करने के लिए, निजी नेटवर्क के सबरिसॉर्स अनुरोधों से पहले प्रीफ़्लाइट के अनुरोध भेजता है. Chrome 104 और Chrome 130 के बाद के वर्शन के काम नहीं करने से जुड़ी चेतावनियों को Chrome 130 में लागू किया जाएगा. इसके बारे में प्राइवेट नेटवर्क ऐक्सेस: प्रीफ़्लाइट का परिचय में बताया गया था. Chrome 123 के बाद से, Chrome कुछ सीओआरएस हेडर को हटा देगा, जैसे कि Accept. ऐसा तब होगा, जब प्रीफ़्लाइट को सिर्फ़ पीएनए की वजह से बनाया और भेजा गया हो.
  • एक ही ऑरिजिन के लिए छूट: Chrome 115 के बाद से, संभावित रूप से भरोसेमंद ऑरिजिन से किए गए एक ही ऑरिजिन के अनुरोधों को पीएनए की पाबंदियों से छूट दी गई है.

अतिरिक्त सुरक्षा: वेब वर्कर

पीएनए की सुरक्षा वेब वर्कर (काम के लिए काम करने वाले कर्मचारी, शेयर किए गए कर्मचारी, और सर्विस वर्कर) तक भी मिलेगी. ऐसे कॉन्टेंट के कुछ उदाहरण यहां दिए गए हैं:

  • कर्मी स्क्रिप्ट फ़ेच करना: कम सार्वजनिक आईपी पतों के लिए सुरक्षित कॉन्टेक्स्ट और प्रीफ़्लाइट की ज़रूरत होती है. Chrome 110 और उसके बाद के वर्शन वाली चेतावनियां, Chrome 130 में लागू होंगी.
  • कर्मी स्क्रिप्ट से शुरू किए गए फ़ेच: वर्कर स्क्रिप्ट के अंदर के सभी फ़ेच, PNA के एक जैसे नियमों का पालन करते हैं.

Chrome 124 और उसके बाद के वर्शन में, नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) की जांच करने के लिए, यहां दिया गया तरीका अपनाएं:

  • chrome://flags/#private-network-access-ignore-worker-errors बंद करें
  • chrome://flags/#private-network-access-respect-preflight-results सक्षम करें

अतिरिक्त सुरक्षा: नेविगेशन फ़ेच करना

PNA, नेविगेशन फ़ेच (iframe, पॉप-अप) पर भी लागू होता है. ऐसा इसलिए होता है, क्योंकि इनका इस्तेमाल CSRF हमलों में किया जा सकता है. Chrome 123 ने Chrome 130 के लिए, नीतियों के उल्लंघन से जुड़ी चेतावनियां दिखाना शुरू कर दिया है.

Chrome 124 में, इन तरीकों से नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट) की जांच की जा सकती है:

  • chrome://flags/#private-network-access-ignore-navigation-errors बंद करें
  • chrome://flags/#private-network-access-respect-preflight-results सक्षम करें

जब PNA किसी नेविगेशन अनुरोध को ब्लॉक करता है, तब उपयोगकर्ताओं को एक खास गड़बड़ी दिखती है. इसमें, उपयोगकर्ताओं को मैन्युअल तरीके से फिर से लोड करने और अनुरोध के लिए अनुमति देने का विकल्प होता है.

जब PNA किसी नेविगेशन अनुरोध को ब्लॉक करता है, तब उपयोगकर्ताओं को एक खास गड़बड़ी दिखती है. इसमें, उपयोगकर्ताओं को मैन्युअल तरीके से फिर से लोड करने और अनुरोध के लिए अनुमति देने का विकल्प होता है.
पीएनए जब किसी नेविगेशन अनुरोध को ब्लॉक करता है, तो उपयोगकर्ताओं को एक गड़बड़ी का मैसेज दिखता है. इसमें, उपयोगकर्ताओं को मैन्युअल तरीके से फिर से लोड करने और अनुरोध के लिए अनुमति देने का विकल्प होता है.

अगर आपकी वेबसाइट पर असर पड़ा हो, तो क्या करें?

प्राइवेट नेटवर्क ऐक्सेस: प्रीफ़्लाइट शुरू करना पोस्ट में दिशा-निर्देश शामिल हैं. नेविगेशन के अनुरोधों के लिए:

  • Access-Control-Allow-Origin को वाइल्डकार्ड ("*") नहीं बनाया जा सकता.
  • Access-Control-Allow-Credentials को "true" पर सेट करना ज़रूरी है.

आगे क्या करना है?

  • WebSockets: फ़िलहाल Chrome 126 से, PNA WebSocket हैंडशेक को कवर करेगा. इसमें चेतावनियां पहले शामिल होंगी.
  • पूरी तरह से नीति उल्लंघन ठीक करने के तरीके (एनफ़ोर्समेंट): Chrome 130 में पीएनए की सभी पाबंदियां (नीतियों का पालन न करने वाले अनुरोधों को ब्लॉक करना) को फ़िलहाल लागू कर दिया जाएगा. उपयोगकर्ताओं के पास ऐसी साइट सेटिंग होगी जो भरोसेमंद साइटों के लिए, PNA को बदल सकती है.

निजी नेटवर्क के इस्तेमाल के उदाहरणों के बारे में सुझाव/राय देना या शिकायत करना

अगर आपने किसी ऐसे निजी नेटवर्क पर वेबसाइट को होस्ट किया है जिसे सार्वजनिक नेटवर्क से अनुरोध करने की ज़रूरत है, तो Chrome टीम को आपका सुझाव चाहिए! Chromium समस्या ट्रैकर (कॉम्पोनेंट: Blink>SecurityFeature>CORS>PrivateNetworkAccess) पर समस्या दर्ज करें.

Unsplash पर जेकुब ज़र्डज़िकी ने फ़ोटो ली है