HTTPS با استفاده از پروتکل TLS، یک ارتباط امن و رمزنگاری شده بین مرورگر کاربر و سرور وب ایجاد میکند. این ارتباط امن باعث میشود اطلاعات حساس مانند رمز کاربر در مراحل انتقال میان مرورگر تا سرور، از دسترسیهای غیرمجاز و تغییرات احتمالی محافظت شود.
پروتکل TLS یا همان Transport Layer Security، یک پروتکل رمزنگاری شده است که ارتباطی امن میان سرور و کاربر برای انتقال دادهها در شبکه اینترنت ایجاد میکند.
هرچند هدف اصلی TLS ایجاد ارتباط امن و محافظت از اطلاعات است، با این حال برخی جنبههای این پروتکل همچنان بخشی از اطلاعات را قابل رصد میکند. یکی از این موارد فیلد SNI است.
فیلد Server Name Indication) SNI) در پروتکل TLS به سرورهای وب کمک میکند تا با استفاده از یک آدرس IP مشترک، به چندین دامنه خدمات رسانی کنند. به عنوان مثال، فرض کنید یک شرکت میزبانی وب (مانند example.com) تصمیم میگیرد برای دو مشتری خود (customer1.com و customer2.com) سرویس ارائه دهد.
بدون استفاده از SNI، شرکتی که میزبان وب انجام میدهد برای هر دامنه نیاز به یک آدرس IP منحصر به فرد دارد. اما با استفاده از SNI، هر دو دامنه میتوانند از یک آدرس IP استفاده کنند. در فرآیند اتصال به سرور و ایجاد یک ارتباط امن، مرورگر کاربر نام دامنه مورد نظر را در فیلد SNI ارسال میکند. بر اساس اطلاعات دریافتی از SNI، سرور میزبانی وب تصمیم میگیرد که کدام گواهینامه SSL را برای ایجاد ارتباط امن ارائه دهد.
به این ترتیب، شرکت میزبانی وب میتواند با استفاده از SNI و یک آدرس IP مشترک، همزمان به دو دامنه متفاوت خدمات ارائه کند. این کار باعث کاهش هزینهها و مصرف منابع میشود.
فرآیند TLS Handshake یک روند تعاملی بین مرورگر کاربر (کلاینت) و سرور است تا پارامترهای امنیتی مشترکی برای ارتباط امن تعیین شوند. در ابتدای این فرآیند، کلاینت پیامی به نام “Client Hello” به سرور ارسال میکند که شامل نسخه TLS مورد پشتیبانی، لیست رمزنگاریهای مورد توافق و فیلد SNI است.
پس از آشنایی با فیلد SNI که نحوه عملکرد آن در ارتباطات امن توضیح داده شد، اکنون به بررسی تکنیک DPI میپردازیم که چگونه میتواند این اطلاعات را برای مقاصد سانسور و کنترل دسترسی به وبسایتها استفاده کند.
با استفاده از Deep Packet Inspection) DPI) در دستگاههای سانسور (middlebox)، ممکن است دسترسی به وبسایتها بر اساس فیلد SNI فیلتر شود. هنگامی که یک کاربر میخواهد از طریق پروتکل TLS به یک سایت متصل شود، مرورگر کاربر فرآیند handshake را آغاز میکند و نام دامنهی مورد نظر را در فیلد SNI ارسال میکند.
دستگاههای سانسور میتوانند به بستههای TLS دسترسی داشته باشند و اطلاعات موجود در فیلد SNI را مشاهده کنند. با توجه به اینکه این اطلاعات در بسته ارسالی قابل خواندن هستند و رمزنگاری نشدهاند، سیستمهای سانسور میتوانند این اطلاعات را بررسی و در صورت مشاهده نام دامنهای که در فهرست ممنوعهها قرار دارد، ارتباط را قطع کنند.
این روش از سانسور بر اساس SNI کارآمد و رایج است، چرا که به سرویسدهندگان و کنترلکنندههای اینترنت امکان میدهد تا به سادگی دسترسی به وبسایتهایی که به دلایل مختلف قابل دسترسی نیستند را کنترل کنند.
در نتیجه، سانسور اینترنت با استفاده از تکنیک DPI برای بررسی فیلد SNI در پروتکل TLS بسیار موثر است و تقریباً همیشه کاربران اینترنت نیاز به استفاده از ابزارهایی مانند انواع VPN و پروکسیها برای دور زدن آن دارد. این روش تنها یکی از استراتژیهایی است که در کشورهایی مانند ایران به کار گرفته شده است تا دسترسی کاربران به اطلاعات و منابع مختلف اینترنت را محدود و کنترل شود.