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

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

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