الانتقال إلى المحتوى
← DNS: دليل هاتف الإنترنت

الدرس 3 من 4 · 7 دقيقة

DNS المشفَّر: DoH وDoT

معياران يضعان عمليات بحث DNS داخل تشفير. ما الذي يخفيانه فعليًا، وما الذي لا يزالان لا يخفيانه، وكيف يدعمهما macOS.

وصف الدرس السابق بحث DNS العادي بأنه بطاقة بريدية: قابلة للقراءة من قِبل أي شخص يتعامل معها في الطريق. يوجد معياران من IETF لوضع تلك البطاقة البريدية داخل مغلَّف: DNS عبر TLS (DoT، وفق RFC 7858) وDNS عبر HTTPS (DoH، وفق RFC 8484). يشفّر كلاهما البحث نفسه؛ ويختلفان أساسًا في طريقة حمله.

DNS عبر TLS

ينص RFC 7858 على هدفه مباشرة: «التشفير الذي يوفره TLS يزيل فرص التنصت والتلاعب أثناء المسار باستعلامات DNS»، معالجًا حقيقة أن «كل استعلامات DNS تقريبًا تُرسَل دون تشفير، مما يجعلها عرضة للتنصت من قبل مهاجم.» يستخدم DoT منفذه الخاص المخصص، 853، بدلًا من المنفذ 53 المعتاد. ويوضح RFC السبب: «هذه التوصية بعدم استخدام المنفذ 53 لـ DNS عبر TLS تهدف إلى تجنب التعقيد في اختيار استخدام TLS أو عدمه، وتقليل خطر هجمات التخفيض (downgrade).»

DNS عبر HTTPS

يسلك RFC 8484 طريقًا مختلفًا: «يُخطَّط كل زوج من استعلام واستجابة DNS إلى تبادل HTTP»، يُحمَل عبر المنفذ 443 نفسه الذي تستخدمه حركة HTTPS العادية. ويشير RFC إلى فائدة جانبية لذلك: «منفذ HTTPS الافتراضي 443 والقدرة على مزج حركة DoH مع حركة HTTPS أخرى على الاتصال نفسه يمكن أن يردعا الأجهزة غير المخوَّلة الموجودة على المسار عن التدخل في عمليات DNS»، لأن عزل بحث ما وحجبه يصبح أصعب حين يبدو كأي طلب ويب آخر.

المصدر: مركز تعلّم Cloudflare، DNS عبر TLS مقابل DNS عبر HTTPS.
DNS عبر TLS (DoT)DNS عبر HTTPS (DoH)
المنفذ853، مخصص لـ DoT443، مشترك مع حركة HTTPS العادية
كيف يظهر على الشبكةحركة بيانات متمايزة وخاصة به (سهلة التمييز، ويمكن حجبها إن اختارت الشبكة ذلك)مندمج مع تصفح الويب العادي

ما يخفيه التشفير، وما لا يزال لا يخفيه

يمنع كلا المعيارين مشغّل الشبكة أو المتنصت عبر Wi-Fi من قراءة عمليات بحثك أثناء انتقالها. لكن لا يخفيها أي منهما عن المُحلِّل الذي أرسلتها إليه. يوضح RFC 8484 بجلاء أن DoH لا يغيّر ما يستطيع الخادم نفسه رؤيته: فهو يشير إلى أن «وسائل نقل مختلفة لاستعلامات واستجابات DNS توفر فعلًا بيانات يمكن استخدامها للربط بين الطلبات»، وأن آليات الويب العادية مثل عناوين IP للعميل، وملفات تعريف الارتباط، ومعلومات جلسة TLS تعني أن «DoH لا يُعرف عنه أنه يُدخل مخاوف جديدة تتجاوز تلك المرتبطة بـ HTTPS» على طرف الخادم. وبالمثل، يشير RFC 7858 إلى أن DoT «لا يعالج مسائل أمنية أخرى في DNS» وأنه «حتى مع الرسائل المشفَّرة، قد يتمكن طرف في موضع جيد من استخلاص تفاصيل معينة من تحليل توقيت الرسائل وأحجامها.» باختصار: DNS المشفَّر ينقل من يرى عمليات بحثك إلى مشغّل المُحلِّل الذي اخترته، لكنه لا يزيل الرؤية كليًا.

هناك فجوة ثانية تستحق المعرفة. فتشفير بحث DNS لا يخفي بذاته الموقع الذي تتصل به بعد ذلك: فمصافحة TLS التي تليه تتضمن عادةً اسم المضيف بشكل ظاهر وصريح. وكما يوضح شرح Cloudflare لميزة الإشارة إلى اسم الخادم (SNI): «تُدرج SNI اسم المضيف في رسالة Client Hello، وهي الخطوة الأولى في مصافحة TLS» — تُرسَل قبل بدء التشفير. ويشرح المصدر نفسه أن امتدادًا يُسمى SNI المشفَّر (ESNI) «يضيف إلى امتداد SNI عبر تشفير جزء SNI من رسالة Client Hello»، وهو ما «يمنع أي طرف يتنصت بين العميل والخادم من رؤية الشهادة التي يطلبها العميل.» ولا يزال دعم إخفاء SNI يعتمد على موافقة كل من المتصفح والموقع عليه، وليس بعد الطريقة التي يعمل بها كل اتصال.

كيف يدعمه macOS

توثّق Apple إعداد "DNS Settings" لأجهزة Mac وiPhone وiPad الذي يقوم بهذا بالضبط: فهو يتيح للجهاز «توجيه استعلامات DNS الخاصة به عبر خادم DNS مشفَّر باستخدام DNS عبر HTTPS أو DNS عبر TLS.» يُقدَّم كملف إعداد (configuration profile)، يمكنه حصر المُحلِّل المشفَّر بنطاقات معيّنة عبر «نطاقات مطابقة تكميلية»، أو تطبيقه فقط على شبكات معيّنة باستخدام «قواعد عند الطلب» يمكن أن تطابق أشياء مثل اسم شبكة SSID.

أهم النقاط

  • يشفّر DoT (وفق RFC 7858) بحث DNS باستخدام TLS على منفذ مخصص، 853؛ ويشفّره DoH (وفق RFC 8484) وينقله عبر منفذ HTTPS المعتاد، 443، مندمجًا مع حركة الويب الأخرى.
  • يمنع كلاهما المتنصتين على مسار الشبكة من قراءة عمليات بحثك.
  • لا يخفي أي منهما عمليات بحثك عن المُحلِّل الذي أرسلتها إليه: ينص RFC 8484 نفسه على أن DoH «لا يُعرف عنه أنه يُدخل مخاوف جديدة تتجاوز تلك المرتبطة بـ HTTPS» على طرف الخادم.
  • حتى مع DNS المشفَّر، تكشف مصافحة TLS للموقع نفسه عادةً اسم مضيفه بشكل ظاهر (SNI)، ما لم يُستخدم امتداد مثل SNI المشفَّر.
  • يدعم macOS وiOS DNS المشفَّر عبر ملف إعداد موثَّق باسم DNS Settings، يمكنه تحديد DoH أو DoT وحصره بنطاقات أو شبكات معيّنة.

اختبر نفسك

  1. 1. أي منفذ يستخدمه DNS عبر TLS (DoT)، ولماذا منفذ مخصص؟

    • المنفذ 80، نفس منفذ HTTP
    • المنفذ 853، اختير جزئيًا لتفادي هجمات التخفيض التي قد تنشأ عن الغموض على المنفذ 53 — صحيح.
    • المنفذ 25، نفس منفذ البريد الإلكتروني
    • منفذ عشوائي في كل مرة

    يخصص RFC 7858 لـ DoT منفذه الخاص، 853، موضحًا أن تفادي المنفذ 53 من أجله «يقلل خطر هجمات التخفيض.»

  2. 2. لماذا يستخدم DNS عبر HTTPS (DoH) المنفذ 443؟

    • لأنه المنفذ الحر الوحيد
    • لأن مشاركة المنفذ 443 مع حركة HTTPS العادية تجعل عزل DoH وحجبه أصعب — صحيح.
    • لأن المنفذ 443 أسرع من المنافذ الأخرى
    • لا يستخدم DoH المنفذ 443

    يشير RFC 8484 إلى أن مزج DoH مع حركة HTTPS العادية على المنفذ 443 «يمكن أن يردع الأجهزة غير المخوَّلة الموجودة على المسار عن التدخل في عمليات DNS.»

  3. 3. هل يخفي DoH أو DoT عمليات بحث DNS الخاصة بك عن المُحلِّل الذي ترسلها إليه؟

    • نعم، تمامًا
    • لا، يخفيان عمليات البحث عن مسار الشبكة، لكن مشغّل المُحلِّل يظل يرى الاستعلامات — صحيح.
    • DoH وحده يخفيها عن المُحلِّل
    • DoT وحده يخفيها عن المُحلِّل

    ينص RFC 8484 على أن DoH «لا يُعرف عنه أنه يُدخل مخاوف جديدة تتجاوز تلك المرتبطة بـ HTTPS» على طرف الخادم، أي أن مشغّل المُحلِّل يظل قادرًا على رؤية الاستعلامات والربط بينها.

  4. 4. حتى مع DNS المشفَّر، ما الذي يكشف عادةً الموقع الذي تتصل به؟

    • كلمة مرور Wi-Fi
    • اسم المضيف المُرسَل بشكل ظاهر في رسالة Client Hello الخاصة بـ TLS (عبر SNI)، ما لم يُستخدم امتداد مثل SNI المشفَّر — صحيح.
    • عنوان IP الخاص لجهاز Mac
    • ذاكرة التخزين المؤقت لمُحلِّل DNS

    توضح Cloudflare أن «SNI تُدرج اسم المضيف في رسالة Client Hello» قبل بدء التشفير؛ صُمم SNI المشفَّر (ESNI) لإخفائه، لكنه ليس شاملًا بعد.

جرّبها مع FireAI

طبّق هذا الدرس عمليًا على جهاز Mac الخاص بك.

المصادر

طبّق ذلك على جهاز Mac الخاص بك

جرّب كل الميزات مجانًا لمدة 17 يومًا، دون بطاقة.

تنزيل لجهاز Mac التوثيق