किसी पेज पर मिला-जुला कॉन्टेंट तब होता है, जब उसका शुरुआती एचटीएमएल, सुरक्षित HTTPS कनेक्शन पर लोड होता है. हालांकि, अन्य संसाधन (जैसे कि इमेज, वीडियो, स्टाइलशीट, और स्क्रिप्ट) असुरक्षित एचटीटीपी कनेक्शन पर लोड होते हैं. इस नाम का मतलब है कि किसी एक पेज पर एचटीटीपी और एचटीटीपीएस, दोनों तरह का कॉन्टेंट मौजूद है.
असुरक्षित एचटीटीपी प्रोटोकॉल का इस्तेमाल करके सब-रिसोर्स का अनुरोध करने से, पेज की सुरक्षा कमज़ोर हो जाती है. ऐसा इसलिए होता है, क्योंकि ये अनुरोध ऑन-पाथ हमलों के लिए असुरक्षित होते हैं. इनमें हमलावर, नेटवर्क कनेक्शन को चुपके से सुनता है और दो पक्षों के बीच होने वाले कम्यूनिकेशन को देखता है या उसमें बदलाव करता है. इन संसाधनों का इस्तेमाल करके, हमलावर लोगों को ट्रैक कर सकते हैं और किसी वेबसाइट पर मौजूद कॉन्टेंट को बदल सकते हैं. साथ ही, अगर वेबसाइट पर एक्टिव मिक्स कॉन्टेंट मौजूद है, तो वे असुरक्षित संसाधनों के साथ-साथ पूरे पेज को कंट्रोल कर सकते हैं.
हालांकि, कई ब्राउज़र उपयोगकर्ता को मिला-जुला कॉन्टेंट की चेतावनियां देते हैं, लेकिन यह रिपोर्ट अक्सर बहुत देर से मिलती है: असुरक्षित अनुरोध पहले ही किए जा चुके होते हैं और पेज की सुरक्षा से समझौता किया जा चुका होता है.
ज़्यादातर ब्राउज़र अब सुरक्षा की वजहों से, मिला-जुला कॉन्टेंट को ब्लॉक कर देते हैं. सुरक्षित कॉन्टेंट के लिए असुरक्षित कॉन्टेंट के अनुरोधों को बदलें, ताकि आपका पेज सही तरीके से लोड होता रहे.
मिले-जुले कॉन्टेंट के दो टाइप
मिला-जुला कॉन्टेंट दो तरह का होता है: ऐक्टिव और पैसिव.
पैसिव मिला-जुला कॉन्टेंट में इमेज, वीडियो, और ऑडियो शामिल होते हैं. यह कॉन्टेंट, पेज के बाकी कॉन्टेंट के साथ इंटरैक्ट नहीं करता. इसलिए, अगर कोई व्यक्ति इस कॉन्टेंट को इंटरसेप्ट या बदलता है, तो वह मैन-इन-द-मिडल हमला नहीं कर सकता.
ऐक्टिव मिला-जुला कॉन्टेंट, पूरे पेज के साथ इंटरैक्ट करता है. इसमें स्क्रिप्ट, स्टाइलशीट, iframe, और ऐसा कोई भी अन्य कोड शामिल है जिसे ब्राउज़र डाउनलोड और एक्ज़ीक्यूट कर सकता है. मिले-जुले ऐक्टिव कॉन्टेंट पर किए जाने वाले हमलों से, हमलावर पेज पर कुछ भी कर सकता है.
पैसिव मिला-जुला कॉन्टेंट
पैसिव मिला-जुला कॉन्टेंट से, ऐक्टिव मिला-जुला कॉन्टेंट की तुलना में कम जोखिम होता है. हालांकि, जोखिम अब भी बना रहता है. उदाहरण के लिए, हमलावर ये काम कर सकता है:
- यह कुकी, आपकी साइट पर मौजूद इमेज के लिए किए गए एचटीटीपी अनुरोधों को इंटरसेप्ट करती है. साथ ही, उन इमेज को बदल देती है या उनकी जगह दूसरी इमेज लगा देती है.
- बटन पर मौजूद इमेज को बदलें, ताकि लोग उन्हें लेकर भ्रमित हो जाएं. उदाहरण के लिए, वे उस कॉन्टेंट को मिटा दें जिसे उन्हें सेव करना था.
- आपकी साइट की इमेज को पॉर्नोग्राफ़िक कॉन्टेंट से बदलकर, उसे खराब कर सकते हैं.
- अपने प्रॉडक्ट की इमेज की जगह, किसी और चीज़ के विज्ञापन दिखाएं.
अगर हमलावर आपकी साइट के कॉन्टेंट में बदलाव नहीं करता है, तो भी वह मिला-जुला कॉन्टेंट के अनुरोधों के ज़रिए उपयोगकर्ताओं को ट्रैक कर सकता है. ये कुकी यह भी बता सकती हैं कि कोई उपयोगकर्ता किन पेजों पर जाता है और ब्राउज़र में लोड की गई इमेज या अन्य संसाधनों के आधार पर, वह किन प्रॉडक्ट को देखता है.
अगर पैसिव मिला-जुला कॉन्टेंट मौजूद है, तो ज़्यादातर ब्राउज़र पता बार में यह दिखाते हैं कि पेज सुरक्षित नहीं है. भले ही, पेज को एचटीटीपीएस पर लोड किया गया हो.
हाल ही में, पैसिव मिला-जुला कॉन्टेंट को सभी ब्राउज़र में लोड किया जाता था. ऐसा इसलिए होता था, क्योंकि इसे ब्लॉक करने से कई वेबसाइटें काम नहीं करती थीं. अब इसमें बदलाव हो रहा है. इसलिए, यह ज़रूरी है कि आप अपनी साइट पर मौजूद मिले-जुले कॉन्टेंट के सभी इंस्टेंस अपडेट करें.
कुछ मामलों में, Chrome पैसिव मिला-जुला कॉन्टेंट अपने-आप अपग्रेड कर देता है. इसका मतलब है कि अगर किसी ऐसेट को एचटीटीपी के तौर पर हार्ड-कोड किया गया है, लेकिन वह एचटीटीपीएस पर उपलब्ध है, तो ब्राउज़र एचटीटीपीएस वर्शन को लोड करेगा. अगर सुरक्षित वर्शन उपलब्ध नहीं है, तो ऐसेट लोड नहीं होती.
जब भी Chrome को मिला-जुला कॉन्टेंट मिलता है या वह पैसिव मिला-जुला कॉन्टेंट अपने-आप अपग्रेड करता है, तो वह DevTools में समस्याएं टैब में ज़्यादा जानकारी वाले मैसेज लॉग करता है. इससे आपको अपनी समस्या ठीक करने के बारे में सलाह मिलती है.
मिला-जुला ऐक्टिव कॉन्टेंट
पैसिव मिला-जुला कॉन्टेंट के मुकाबले, ऐक्टिव मिला-जुला कॉन्टेंट ज़्यादा खतरनाक होता है. हमलावर, ऐक्टिव कॉन्टेंट को इंटरसेप्ट करके उसमें बदलाव कर सकता है. इसका इस्तेमाल करके, वह आपके पेज या पूरी वेबसाइट को पूरी तरह से कंट्रोल कर सकता है. इससे वे पेज के किसी भी पहलू को बदल सकते हैं. जैसे, अलग-अलग कॉन्टेंट दिखाना, उपयोगकर्ता के पासवर्ड या लॉगिन क्रेडेंशियल चुराना, उपयोगकर्ता की सेशन कुकी चुराना या उपयोगकर्ता को किसी दूसरी साइट पर रीडायरेक्ट करना.
मिले-जुले ऐक्टिव कॉन्टेंट से जुड़े जोखिम बहुत ज़्यादा होते हैं. इसलिए, ज़्यादातर ब्राउज़र उपयोगकर्ताओं को सुरक्षित रखने के लिए, इस तरह के कॉन्टेंट को डिफ़ॉल्ट रूप से ब्लॉक कर देते हैं. हालांकि, ब्राउज़र बनाने वाली कंपनियों और वर्शन के हिसाब से, यह तरीका अलग-अलग होता है. Chrome में, ब्लॉक किए गए कॉन्टेंट को DevTools के समस्याएं टैब में देखा जा सकता है.
मिले-जुले कॉन्टेंट के बारे में जानकारी
ब्राउज़र, मिला-जुला कॉन्टेंट के स्पेसिफ़िकेशन का पालन करते हैं. इससे ज़रूरत के हिसाब से ब्लॉक किए जा सकने वाले कॉन्टेंट और ब्लॉक किए जा सकने वाले कॉन्टेंट कैटगरी के बारे में पता चलता है.
किसी संसाधन को वैकल्पिक रूप से ब्लॉक किए जा सकने वाले कॉन्टेंट के तौर पर तब माना जाता है, जब मिला-जुला कॉन्टेंट के तौर पर उसके इस्तेमाल की अनुमति देने से होने वाले जोखिम की तुलना में, वेब के अहम हिस्सों के काम न करने से होने वाला जोखिम ज़्यादा हो. यह पैसिव मिक्स्ड कॉन्टेंट का सबसेट है.
सभी तरह के मिक्स्ड कॉन्टेंट को ब्लॉक किया जा सकता है. हालांकि, कुछ मिक्स्ड कॉन्टेंट को ब्लॉक करने का विकल्प होता है. ऐसे में, ब्राउज़र को सभी मिक्स्ड कॉन्टेंट को ब्लॉक करना चाहिए.
पिछले कुछ सालों में, एचटीटीपीएस का इस्तेमाल काफ़ी बढ़ गया है. साथ ही, यह वेब पर डिफ़ॉल्ट रूप से इस्तेमाल होने वाला प्रोटोकॉल बन गया है. इस वजह से, अब ब्राउज़र के लिए सभी तरह के मिले-जुले कॉन्टेंट को ब्लॉक करना आसान हो गया है. भले ही, वे सब-रिसोर्स टाइप मिले-जुले कॉन्टेंट के स्पेसिफ़िकेशन में ज़रूरत के हिसाब से ब्लॉक किए जा सकने वाले के तौर पर तय किए गए हों.
पुराने ब्राउज़र
ऐसा हो सकता है कि कुछ लोग पुराने ब्राउज़र का इस्तेमाल कर रहे हों. अलग-अलग ब्राउज़र वर्शन, अलग-अलग वेंडर से मिले मिला-जुला कॉन्टेंट को अलग-अलग तरीके से हैंडल करते हैं. सबसे खराब स्थिति में, पुराने ब्राउज़र और वर्शन, किसी भी तरह के मिला-जुला कॉन्टेंट को ब्लॉक नहीं करते. यह उपयोगकर्ता के लिए सुरक्षित नहीं है.
अपने सभी संसाधनों को सुरक्षित तरीके से लोड करके और मिला-जुला कॉन्टेंट की समस्याओं को ठीक करके, यह पक्का किया जा सकता है कि आपका कॉन्टेंट दिखे. साथ ही, उपयोगकर्ताओं को ऐसे खतरनाक कॉन्टेंट से बचाया जा सकता है जिसे पुराने ब्राउज़र शायद ब्लॉक न करें.