محتوای ترکیبی چیست؟

محتوای ترکیبی زمانی رخ می‌دهد که HTML اولیه از طریق یک اتصال HTTPS ایمن بارگیری شود، اما منابع دیگر (مانند تصاویر، ویدیوها، شیوه نامه‌ها، اسکریپت‌ها) از طریق یک اتصال HTTP ناامن بارگیری می‌شوند. این محتوای مختلط نامیده می شود زیرا هر دو محتوای HTTP و HTTPS برای نمایش یک صفحه بارگیری می شوند و درخواست اولیه از طریق HTTPS ایمن بود.

درخواست منابع فرعی با استفاده از پروتکل HTTP ناامن، امنیت کل صفحه را تضعیف می‌کند، زیرا این درخواست‌ها در برابر حملات درون مسیری آسیب‌پذیر هستند، جایی که مهاجم یک اتصال شبکه را استراق سمع می‌کند و ارتباط بین دو طرف را مشاهده یا تغییر می‌دهد. با استفاده از این منابع، مهاجمان می توانند کاربران را ردیابی کرده و محتوای یک وب سایت را جایگزین کنند و در مورد محتوای ترکیبی فعال، کنترل کامل صفحه را در دست بگیرند، نه فقط منابع ناامن.

اگرچه بسیاری از مرورگرها اخطارهای محتوای مختلط را به کاربر گزارش می دهند، اما تا زمانی که این اتفاق بیفتد، دیگر دیر شده است: درخواست های ناامن قبلاً انجام شده اند و امنیت صفحه به خطر افتاده است.

به همین دلیل است که مرورگرها به طور فزاینده ای محتوای ترکیبی را مسدود می کنند. اگر محتوای مختلط در سایت خود دارید، رفع آن باعث می شود که با سخت گیری بیشتر مرورگرها، محتوا همچنان بارگذاری شود.

دو نوع محتوای مختلط

دو نوع محتوای مختلط عبارتند از: فعال و غیرفعال.

محتوای ترکیبی غیرفعال به محتوایی اشاره می‌کند که با بقیه صفحه ارتباط برقرار نمی‌کند، و بنابراین حمله انسان در وسط محدود به کارهایی است که در صورت رهگیری یا تغییر آن محتوا می‌توانند انجام دهند. محتوای ترکیبی غیرفعال به عنوان تصاویر، ویدئو و محتوای صوتی تعریف می شود.

محتوای ترکیبی فعال با کل صفحه در تعامل است و به مهاجم اجازه می دهد تقریباً هر کاری را با صفحه انجام دهد. محتوای ترکیبی فعال شامل اسکریپت ها، شیوه نامه ها، iframes و سایر کدهایی است که مرورگر می تواند آنها را دانلود و اجرا کند.

محتوای مختلط غیرفعال

محتوای ترکیبی غیرفعال کمتر مشکل ساز است، اما همچنان یک تهدید امنیتی برای سایت شما و کاربران شما ایجاد می کند. به عنوان مثال، یک مهاجم می تواند درخواست های HTTP را برای تصاویر در سایت شما رهگیری کند و این تصاویر را تعویض یا جایگزین کند. مهاجم می‌تواند تصاویر دکمه ذخیره و حذف را عوض کند و باعث شود کاربران شما بدون اینکه قصدی داشته باشند محتوا را حذف کنند. نمودارهای محصول خود را با محتوای زشت یا مستهجن جایگزین کنید و باعث تخریب سایت شما شود. یا تصاویر محصول خود را با تبلیغات یک سایت یا محصول دیگر جایگزین کنید.

حتی اگر مهاجم محتوای سایت شما را تغییر ندهد، مهاجم می‌تواند کاربران را از طریق درخواست‌های محتوای ترکیبی ردیابی کند. مهاجم می تواند بر اساس تصاویر یا منابع دیگری که مرورگر بارگیری می کند، تشخیص دهد که کاربر از کدام صفحات بازدید می کند و کدام محصولات را مشاهده می کند.

اگر محتوای ترکیبی غیرفعال وجود داشته باشد، اکثر مرورگرها در نوار URL نشان می‌دهند که صفحه امن نیست، حتی زمانی که خود صفحه از طریق HTTPS بارگیری شده است. شما می توانید این رفتار را با این دمو که حاوی نمونه هایی از محتوای غیرفعال ترکیبی است مشاهده کنید.

تا همین اواخر، محتوای ترکیبی غیرفعال در همه مرورگرها بارگذاری می شد، زیرا مسدود کردن آن باعث شکست بسیاری از وب سایت ها می شد. این در حال حاضر شروع به تغییر کرده است و بنابراین ضروری است که هر نمونه ای از محتوای ترکیبی را در سایت خود به روز کنید.

Chrome در حال حاضر ارتقا خودکار محتوای ترکیبی غیرفعال را در صورت امکان انجام می دهد . ارتقای خودکار به این معنی است که اگر دارایی از طریق HTTPS در دسترس باشد، اما به عنوان HTTP کدگذاری شده باشد، مرورگر نسخه HTTPS را بارگیری می‌کند. اگر نسخه ایمن یافت نشد، دارایی بارگیری نمی شود.

هر زمان که کروم محتوای ترکیبی را شناسایی کند یا محتوای ترکیبی غیرفعال را به‌طور خودکار ارتقا دهد، پیام‌های دقیق را در برگه مشکلات در DevTools ثبت می‌کند تا شما را در مورد نحوه رفع مشکل خاص راهنمایی کند.

برگه Issues در Chrome DevTools اطلاعات دقیقی در مورد مشکل محتوای ترکیبی خاص و نحوه رفع آن نشان می دهد.

محتوای ترکیبی فعال

محتوای مختلط فعال خطر بیشتری نسبت به محتوای ترکیبی غیرفعال دارد. یک مهاجم می تواند محتوای فعال را رهگیری کرده و بازنویسی کند و در نتیجه کنترل کامل صفحه شما یا حتی کل وب سایت شما را در دست بگیرد. این به مهاجم اجازه می‌دهد تا هر چیزی را در مورد صفحه تغییر دهد، از جمله نمایش محتوای کاملاً متفاوت، سرقت گذرواژه‌های کاربر یا سایر اعتبارنامه‌های ورود، سرقت کوکی‌های جلسه کاربر، یا هدایت کاربر به طور کامل به سایت دیگری.

با توجه به شدت این تهدید، اکثر مرورگرها در حال حاضر این نوع محتوا را به طور پیش فرض برای محافظت از کاربران مسدود می کنند، اما عملکرد بین فروشندگان و نسخه های مرورگر متفاوت است.

این نسخه ی نمایشی دیگر حاوی نمونه هایی از محتوای ترکیبی فعال است. مثال را از طریق HTTP بارگیری کنید تا محتوایی را ببینید که هنگام بارگیری مثال از طریق HTTPS مسدود شده است. محتوای مسدود شده نیز در تب Issues به تفصیل توضیح داده خواهد شد.

برگه Issues در Chrome DevTools اطلاعات دقیقی در مورد مشکل محتوای ترکیبی خاص و نحوه رفع آن نشان می دهد.

مشخصات محتوای ترکیبی

مرورگرها از مشخصات محتوای ترکیبی پیروی می‌کنند که دسته‌های محتوای قابل مسدود شدن و محتوای قابل مسدود کردن را تعریف می‌کند.

با توجه به مشخصات، یک منبع به عنوان محتوای اختیاری قابل مسدود شدن واجد شرایط می شود "زمانی که خطر اجازه دادن به استفاده از آن به عنوان محتوای ترکیبی با خطر شکستن بخش های قابل توجهی از وب غلبه کند". این زیر مجموعه ای از دسته محتوای مختلط غیرفعال است که در بالا توضیح داده شد.

همه محتوایی که به صورت اختیاری قابل مسدود شدن نیستند، قابل مسدود شدن در نظر گرفته می شوند و باید توسط مرورگر مسدود شوند.

در سال‌های اخیر، استفاده از HTTPS به طور چشمگیری افزایش یافته است و به یک پیش‌فرض واضح در وب تبدیل شده است. این امر اکنون باعث می‌شود مرورگرها مسدود کردن همه محتوای ترکیبی، حتی آن دسته از منابع فرعی که در مشخصات محتوای مختلط به‌عنوان اختیاری قابل مسدود شدن تعریف شده‌اند را در نظر بگیرند. به همین دلیل است که اکنون می بینیم که کروم رویکرد سختگیرانه تری به این منابع فرعی دارد.

مرورگرهای قدیمی

مهم است که به یاد داشته باشید که هر بازدید کننده از وب سایت شما از به روزترین مرورگرها استفاده نمی کند. نسخه‌های مختلف از تولیدکنندگان مختلف مرورگر، هرکدام با محتوای ترکیبی متفاوت برخورد می‌کنند. در بدترین حالت، مرورگرها و نسخه های قدیمی به هیچ وجه محتوای ترکیبی را مسدود نمی کنند، که برای کاربر بسیار ناامن است.

با رفع مشکلات محتوای مختلط خود، اطمینان حاصل می کنید که محتوای شما در مرورگرهای جدید قابل مشاهده است. شما همچنین به محافظت از کاربران در برابر محتوای خطرناکی که توسط مرورگرهای قدیمی مسدود نشده است کمک می کنید.