ویرگول
ورودثبت نام
جویا هاشمی زاده
جویا هاشمی زادهمحقق امنیت
جویا هاشمی زاده
جویا هاشمی زاده
خواندن ۷ دقیقه·۱ ماه پیش

حریم خصوصی در DNS

DNS PRIVACY
DNS PRIVACY

DNS مخفف (Domain Name System) یک سیستم سلسله‌مراتبی در بستر اینترنت است که وظیفه‌ی اصلی آن ترجمه‌ی نام‌های دامنه به آدرس‌های IP را بر عهده دارد. با وجود نقش حیاتی آن، طراحی اولیه‌ی DNS فاقد سازوکارهایی برای احراز هویت پاسخ‌های دریافتی و محرمانگی ترافیک است؛ مسئله‌ای که امکان شنود اطلاعات و دست‌کاری پاسخ‌ها را فراهم می‌سازد.

پیش از آن‌که به موضوع حریم خصوصی در DNS بپردازیم، لازم است ابتدا درک بهتری از نحوه‌ی عملکرد و اهمیت این سرویس بپردازیم:

DNS به‌عنوان یک سیستم نام دامنه، مانند یک دفترچه تلفن (Contact) برای شبکه ایفای نقش می‌کند. اساس کاری این سیستم به این صورت می‌باشد که امکان برقراری ارتباط بر مبنای Name، از مرور صفحات وب تا دسترسی به منابع اشتراکی در شبکه، برای کاربران فراهم می‌سازد تا ارتباطات به شکل راحت‌تری انجام گردد.نکته‌ای که باید به آن توجه داشت این است که ارتباطات در Network بر پایه‌ی IP انجام می‌شود و چیزی به نام فیلد Name در ساختار لایه‌ای شبکه وجود ندارد؛ بنابراین، پروتکل DNS این موضوع را برای ما مدیریت می‌کند تا ارتباطات به شکل راحت‌تری انجام گردد.

فرآیند کاری این پروتکل مبتنی بر Query–Response (پرس‌وجو-پاسخ) است؛ یعنی کلاینت ابتدا یک درخواست DNS (Query) به سرور DNS ارسال می‌کند و در پاسخ، سرور DNS یک پاسخ (DNS Response) شامل رکوردهایی مانند آدرس IP یا سایر اطلاعات مرتبط با دامنه را به کلاینت بازمی‌گرداند.DNS در هر سازمانی به‌عنوان یکی از سرویس‌های حیاتی و مهم محسوب می‌شود، زیرا بسیاری از سرویس‌ها و سامانه‌ها برای شناسایی و دسترسی به منابع به آن وابسته‌اند و بر این اساس فعالیت می کنند.در تنظیمات هر DNS معمولاً شامل اطلاعات مهمی درباره ساختار نام‌گذاری و سرویس‌های شبکه است. در نتیجه، از کار افتادن DNS می‌تواند منجر به اختلال در بخش قابل‌توجهی از سرویس‌های حیاتی شبکه شود.

با وجود کاربردهای گسترده، DNS به‌صورت پیش‌فرض محتوای درخواست‌ها را رمزنگاری نمی‌کند و همچنین پاسخ‌های دریافتی را از نظر صحت و اصالت اعتبارسنجی نمی‌کند و همین موضوع امکان شنود ترافیک DNS و زمینه بروز حملاتی مانند DNS Spoofing را فراهم می‌کند.علاوه بر این، DNS یکی از اهداف رایج حملات در سطح شبکه محسوب می‌شود و در برخی موارد نیز به‌عنوان یک واسط برای اجرای حملات دیگر، مانند انتقال داده‌ها به‌صورت مخفی (DNS Tunneling)، مورد سوءاستفاده قرار می‌گیرد. به همین دلیل، DNS نقش بسیار مهمی در امنیت کلی ارتباطات شبکه ایفا می‌کند.

برای مقابله با بخشی از این تهدیدات، مکانیزمی به نام DNSSEC معرفی گردیده است. این مکانیزم با استفاده از امضاهای دیجیتال، اصالت و یکپارچگی پاسخ‌های DNS را تضمین می‌کند و از دست‌کاری داده‌ها در مسیر جلوگیری می‌کند.

آیا DNSSEC تضمین‌کننده حریم خصوصی می باشد؟

پاسخ به این سؤال منفی می‌باشد. DNSSEC محرمانگی (Confidentiality) را فراهم نمی‌کند، بلکه تنها صحت و اصالت پاسخ‌های DNS را از طریق امضای دیجیتال (Digital Signature) تأیید می‌نماید.

در این مکانیزم، سرورهای DNS پاسخ‌ها را با استفاده از کلید خصوصی امضاء می‌کنند و کلاینت‌ها با استفاده از کلید عمومی، صحت این امضاها را اعتبارسنجی می‌کنند.در صورتی که امضا معتبر نباشد، پاسخ مربوطه رد شده و مورد استفاده قرار نمی‌گیرد.به این ترتیب، DNSSEC تضمین‌کننده اعتبار پاسخ‌هاست. در نتیجه، DNSSEC تضمین می‌کند که پاسخ دریافتی از یک منبع معتبر ارسال شده و در طول مسیر دچار دست‌کاری نشده است. با این حال، محتوای پیام‌های DNS همچنان به‌صورت متن ساده (Plaintext) در شبکه منتقل می‌شود و بنابراین امکان شنود ترافیک DNS همچنان وجود دارد.

پس برای دستیابی به محرمانگی و جلوگیری از شنود، استفاده از مکانیزم‌هایی نظیر DNS over HTTPS (DoH) و DNS over TLS (DoT) ضروری است.

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

DNSCrypt

DNS over HTTPS (DoH)

DNS over TLS (DoT)

DNS over QUIC (DoQ)

پروژه DNSCrypt یکی از اولین راهکارهای رمزنگاری ترافیک DNS می‌باشد که با استفاده از رمزنگاری و احراز هویت، از شنود، دستکاری و جعل پاسخ‌های DNS جلوگیری می‌کند. با این حال، DNSCrypt برخلاف پروتکل‌هایی مانند DoH و DoT، از استانداردسازی رسمی گسترده‌ای برخوردار نیست و عمدتاً در برخی ابزارهای متن‌باز مورد استفاده قرار می‌گیرد.

در تکنولوژی DNS over HTTPS (DoH)، درخواست‌ها و پاسخ‌های DNS به‌جای استفاده از پورت سنتی 53، از طریق پروتکل HTTPS و بر روی پورت 443 منتقل می‌شوند. این ویژگی باعث می‌شود ترافیک DNS در قالب ترافیک معمول وب قرار گیرد و تشخیص آن برای بسیاری از فایروال‌ها دشوارتر شود. در نتیجه، DoH سطح بالاتری از محرمانگی و حریم خصوصی را برای کاربران فراهم می‌کند.

در مقابل، DNS over TLS (DoT) از پروتکل TLS برای رمزنگاری ترافیک DNS استفاده می‌کند، اما برخلاف DoH، این ارتباط معمولاً از طریق پورت اختصاصی 853 برقرار می‌شود. این ویژگی باعث می‌شود ترافیک DoT به‌راحتی قابل شناسایی باشد، هرچند همچنان یک کانال امن و رمزنگاری‌شده برای انتقال داده‌ها فراهم می‌کند.

یکی از جدیدترین تکنولوژی‌ها در این حوزه، DNS over QUIC (DoQ) است که به‌طور رسمی در سال 2022 معرفی شده است. این پروتکل بر پایه QUIC و با استفاده از UDP طراحی شده و با بهره‌گیری از ویژگی‌هایی مانند کاهش تأخیر، برقراری سریع اتصال و پشتیبانی از multiplexing، در برخی شرایط عملکرد بهتری نسبت به DoH و DoT ارائه می‌دهد، در حالی که همچنان محرمانگی ترافیک DNS را حفظ می‌کند.

در برخی کشورها، از جمله آمریکا، مرورگرهایی مانند Firefox فرآیند فعال‌سازی DNS over HTTPS (DoH) را به‌صورت تدریجی و مبتنی بر منطقه (region-based rollout) آغاز کرده است. در این رویکرد، قابلیت DoH به‌صورت پیش‌فرض برای برخی کاربران فعال شده یا به آن‌ها پیشنهاد می‌شود.این فرآیند به‌صورت کنترل‌شده و با در نظر گرفتن شرایط محیطی کاربر، مانند تنظیمات شبکه، سیاست‌های سازمانی و سازگاری با resolverهای موجود، انجام می‌شود.این رویکرد را می‌توان گامی در جهت بهبود حریم خصوصی کاربران در فضای وب دانست، زیرا درخواست‌های DNS به‌صورت رمزنگاری‌شده منتقل می‌شوند. با این حال، استفاده از DoH مستلزم اعتماد به ارائه‌دهنده این سرویس است، چرا که این ارائه‌دهنده به‌طور بالقوه به اطلاعات مربوط به درخواست‌های DNS کاربران دسترسی خواهد داشت.

در شکل زیر، نمونه‌ای از مقایسه بین ترافیک DNS سنتی و ترافیک مبتنی بر DNS over HTTPS (DoH) ارائه شده است که تفاوت در نحوه انتقال و سطح محرمانگی داده‌ها را نشان می‌دهد.

مقایسه ترافیک DNS سنتی با DoH
مقایسه ترافیک DNS سنتی با DoH

اگر به‌عنوان کاربر دنبال حفظ حریم خصوصی هستید، استفاده از DNSهایی مانند Google یا Cloudflare که از مکانیزم DoH پشتیبانی می‌کنند، گزینه‌ی مناسبی است. به عنوان مثال، سرویس Google از طریق مسیر dns.google/dns-query و سرویس Cloudflare از طریق cloudflare-dns .com / dns-query در دسترس هستند.علاوه بر این، شرکت‌های دیگری نیز وجود دارند که از تکنولوژی‌های DoH و DoT پشتیبانی می‌کنند و هرکدام سیاست‌های متفاوتی در زمینه حفظ حریم خصوصی دارند.

علاوه بر سرویس‌های عمومی DNS، برخی شرکت‌ها به‌صورت تخصصی در حوزه امنیت DNS فعالیت می‌کنند و تمرکز اصلی (Business Line) آن‌ها بر تحلیل و حفاظت از ترافیک DNS است. این شرکت‌ها با جمع‌آوری و به‌روزرسانی مداوم پایگاه‌های داده‌ای از دامنه‌های مخرب (Malicious Domains)، می‌توانند تهدیداتی مانند بدافزار، فیشینگ و سرورهای فرماندهی (C&C) را شناسایی و مسدود کنند.

در این سیستم‌ها، زمانی که کاربر یا یک سیستم درخواست (DNS Query) برای یک دامنه مشکوک ارسال می‌کند، سرویس DNS آن را بررسی کرده و در صورت تشخیص تهدید، درخواست را بلاک می‌کند یا به یک پاسخ امن هدایت می‌کند. به این ترتیب، از برقراری ارتباط با منابع مخرب جلوگیری می‌شود.

از جمله شرکت‌های فعال در این حوزه می‌توان به Infoblox و Cisco Umbrella اشاره کرد که خدمات پیشرفته‌ای در زمینه امنیت مبتنی بر DNS ارائه می‌دهند.

برای استفاده از قابلیت‌های DNS over HTTPS (DoH) و DNS over TLS (DoT) در پلتفرم‌های مختلف، روش‌های پیاده‌سازی بسته به سیستم‌عامل متفاوت است.در گوشی های آیفون، از نسخه iOS 14 به بعد، امکان پیکربندی DoH بدون نیاز به نصب نرم‌افزار جانبی و از طریق تنظیمات سیستم فراهم گردیده است.در گوشی های Android، از نسخه 9 به بعد، قابلیت DoT تحت عنوان «Private DNS» در دسترس است و کاربران می‌توانند آن را به‌صورت مستقیم از طریق تنظیمات فعال کنند. با این حال، برای استفاده از DoH معمولاً نیاز به استفاده از نرم‌افزارهای جانبی مانند Intra و Nebuto وجود دارد.در سیستم‌عامل Windows نیز، از نسخه Windows 11 ، پشتیبانی از DoH به‌صورت داخلی اضافه گردیده و کاربران می‌توانند این قابلیت را از طریق تنظیمات شبکه فعال نمایند.

در آخر نکته‌ای که باید در مورد DoH (DNS over HTTPS) در نظر گرفت این است که این تکنولوژی اگرچه باعث افزایش محرمانگی می‌شود، اما به‌معنای ناشناس‌بودن کامل نیست. در DoH، درخواست‌های DNS به‌صورت رمزنگاری‌شده ارسال می‌شوند و همین موضوع باعث می‌شود که واسطه‌هایی مانند ISP یا ابزارهای شنود در مسیر، نتوانند به‌راحتی متوجه شوند که کاربر به چه دامنه‌ای درخواست داده است.با این حال، ارائه‌دهنده سرویسی که از آن برای DoH استفاده می‌شود (مانند Google یا Cloudflare)، همچنان می‌تواند درخواست‌های DNS را مشاهده کند. به عبارت دیگر، نقطه اعتماد (Trust) را از ISP به ارائه‌دهنده DoH منتقل می‌شود، نه اینکه آن را به‌طور کامل حذف کند.

حریم خصوصیdns
۶
۰
جویا هاشمی زاده
جویا هاشمی زاده
محقق امنیت
شاید از این پست‌ها خوشتان بیاید