كيف تحمي DNS ؟

الإنترنت 0 ayman

ملخص

نظام أسماء النطاقات (DNS) أحد الخدمات الهامة في شبكة الانترنت والذي يقوم بتحويل أسماء النطاقات Domain Name إلى أرقام IP addressوالعكس. فلكي تتم عملية التحويل هذه يحتاج النظام إلى مستودع بيانات لحفظ أسماء النطاقات (Domain name) وما يرتبط بها من عنوانين (IP address). ويحتاج أيضا إلى برنامج يدير المستودع ويوفر وظيفة تحليل الأسماء.
فلحماية هذا النظام يجب أن تتوفر فيه المعايير الأساسية لحماية أي نظام وهي السرية والمصداقية وتوفر المعلومات. فالمعلومات التي يقدمها DNS لا تعتبر سريه لأنه يقوم بتوفير معلومات عن أي من الموارد المتاحة للجمهور. باستثناء البيانات المتعلقة بالموارد الداخلية (على سبيل المثال خادم داخل جدار الحماية)التي يتم توفيرها عن طريق قنوات آمنة. أما مصداقية المعلومات وتوفرها تعتبر من أهم المعايير الرئيسية لأمن نظام أسماء النطاقات. فهناك مبادئ هامة لابد من معرفتها لتوفير تلك الخاصيتين وأيضا يجب معرفة الهجمات الممكن حدوثها على DNS وطرق الحماية منها، كالهجمات على مستضيفه، وعلى برنامجه وعلى بياناته أيضا.

كلمات مفتاحيه

نظام أسماء النطاقات (DNS)، خادم الأسماء (Name server) ، مستضيف DNS ، برنامج DNS،بيانات DNS الهجمات ، حماية

مقدمة

مع تزايد الخدمات على شبكة الانترنت و ازدياد حاجات الناس لها يتوجب علينا تقديم أحدث وأفضل التسهيلات لمرتاديها. فمن هذه التسهيلات نظام أسماء النطاقات (DNS) والذي يوفر على المستخدم حفظ العناوين الفريدة IP address لكل خدمة على شبكة الانترنت. فمن خلاله يستطيع المستخدم استخدام الأسماء(Domain name) بدلا من الأرقام (IP address)؛ لأن الإنسان بطبعه يحفظ الأسماء ويتذكرها أكثر من الأرقام ، فيقوم DNS بتحويل هذه الأسماء إلى أرقام.
فلو نظرنا إلى مدى حاجتنا إلى DNS يوميا وحجم الخدمات التي يقدمها ،وفي المقابل نظرنا إلى كثرة المعتدين لأدركنا مدى الحاجة إلى حماية هذا النظام من الهجمات عليه. فمن خلال الأسطر التالية سنعرض نبذه بسيطة عن ماهية DNS وعن البنية التحتية له، وبعد ذلك الهجمات الممكنة على DNS وطرق الحماية منها، من خلال معرفة الهجمات الممكن حدوثها على مستضيف DNS، برنامج DNSو بيانات DNS.

 

1. ما هو نظام أسماء النطاقات (DNS)[1]

نحن نعلم أن كل موقع أو خدمة على الانترنت تحدد بعنوان فريد لا يمكن أن تتشارك فيه مع موقع أو خدمة أخرى، وهذا العنوان عبارة عنIP address) ) ويمثل بمجموعة متتالية من أربعة أرقام تفصل بينها نقاط مثل (123.67.43.254).
فلو نظرنا إلى الكم الهائل من المواقع والتطبيقات الموجودة على شبكة الانترنت، ومدى حاجتنا إلى عدد منها يوميا لأدركنا مدى صعوبة تذكّر كل هذه الأرقام للدخول إلى كل واحد منها؛ لأن الإنسان بطبعه يحفظ الأسماء ويتذكرها أكثر من الأرقام. فلتسهيل عملية الوصول إلى هذه المواقع يتم استخدام أسماء(Domain name) بدلا من الأرقام(IP address)، لذلك يحتاج المستخدم إلى نظام يقوم بتحويل هذه الأسماء إلى أرقام والعكس. فعملية التحويل هذه من المهام الأساسية لـنظام أسماء النطاقات (DNS).
يستطيع المستخدم الدخول إلى صفحات الانترنت من خلال برنامج (مثل: متصفح) يكنه من كتابة domain nameالخاص بالصفحة. ولعرض هذه الصفحة، يحتاج المتصفح إلى IP address الخاص بها. فيطلب المتصفح من DNS إعطائه هذه المعلومات. فعملية تحويل (Domain name) إلى (IP address) تسمى تحليل الأسماء name resolution)).
تشمل وظيفة تحليل الأسماء الوحدات التالية.
• مستودع بيانات لحفظ أسماء النطاقات (Domain name) وما يرتبط بها من عنوانين (IP address).
• برنامج يدير المستودع ويوفر وظيفة تحليل الأسماء، وهذه الوظيفتين توفر من خلال خادم الأسماء (name server).

2. البيئة التحتية لنظام أسماء النطاقات (DNS)

 
يتكون نظام أسماء النطاقات من ثلاث مكونات أساسيه وهي: (الكتاب)

2.1 فضاء الأسماء(Domain namespace) : ]2[

هو التمثيل الهرمي لجميع النطاقات حيث تحتوي على عدة مستويات مختلفة وهي:
• النطاق أو الميدان الجذري ( Root Domain): يمثل أعلى مستوى في البنية الهرمية و يشار إليه بنقطة (.) Period .
• مستوى الأول للنطاقات (First-Level Domains): يعبر هذا المستوى عن نوع المنظمة مثل .com ، أو الموقع الجغرافي مثل .mn
يمكن لنطاقات المستوى الأعلى Top Level Domain أن تحتوي على نطاقات المستوى الثاني Second Level Domains ، بالإضافة إلى المستخدمين .
• المستوى الثاني للنطاقات (Second Level Domains): غالبا يمثل اسم المنظمة مثل مؤسسة Dovercorp ،و هذه الأسماء تتبع المستوى الأول للنطاقات مثل Dovercorp.com. ويمكن أن يحتوي أيضا على نطاقات أخرى تدعى Sub domains على سبيل المثال نطاق مؤسسة Dovercorp تحتوي على فرعين وهما التسويق: Marketing.Dovercorp.com والمبيعات Sales.Dovercorp.com.
• أسماء المضيفين(Host Names): تكون أسماء المضيفين إشارة إلى كمبيوترات موجودة على الانترنت أو في شبكة خصوصية وتكون أسماء المضيفين دائماً في أقصى اليسار ضمن الاسم . وكما في المثال السابق يكون عنوان كمبيوتر داخل قسم التسويق www.Marketing.Dovercorp.com ويكون بذلك اسم مؤهل بالكامل FQDN ) fully qualified domain name ).

2.2 المناطق في DNS (zones) ]2[

يعتبر الـ Zone الوحدة الإدارية في نظام الـ DNS ويحتوي على معلومات حول جزء من النطاقات .(Domains) []

2.3 خادم الأسماء(Name Servers ]3[

تحتوي خادم الأسماء على معلومات عن عناوين الكمبيوترات المضافة (host) في منطقة محددة (zone) و عناوين الـ IP الموافقة ، حيث تقدّم هذه المعلومات إلى المستخدمين الذين يقومون بإرسال الطلبات من أجل الحصول على مثل هذه المعلومات. في حال لم يكن خادم الأسماء Name Server قادراً على تقديم المعلومات لسبب أو لآخر، فإن الطلب يمكن أن يمرر إلى خادم أسماء آخر.

3. مستضيف DNS ]4[

هي الخدمة التي تدير نظام أسماء النطاقات DNSفهناك عدد كبير من المواقع التي تقدم خدمة الاستضافة DNS إما لنطاقات المستوى الأول (First-Level Domains) أو لنطاقات المستوى الثاني (Second Level Domains).

4. حماية نظام أسماء النطاقات (DNS) من الهجمات ]1[

السرية، المصداقية و توفر الخدمة من أهم المعايير التي يقاس بها الأمن في جميع الأنظمة. ومع ذلك، من المتوقع من نظام أسماء النطاقات DNS توفير معلومات عن أي من الموارد المتاحة للجمهور. باستثناء البيانات المتعلقة بالموارد الداخلية (على سبيل المثال خادم داخل جدار الحماية)التي يتم توفيرها عن طريق قنوات آمنة، فبالتالي البيانات المتوفرة من الموارد المتاحة للجمهور لا تعتبر سرية. لذلك سرية المعلومات لا تعتبر من المعايير الأساسية لأمن نظام أسماء النطاقات (DNS).
أما التأكد من صحة المعلومات والمحافظة على سلامتها من خلال خدمة تحليل الأسماء التي يوفرها نظام أسماء النطاقات DNS هو أمر حاسم لكفاءة أداء شبكة الإنترنت. تبعا لذلك، التأكد من صحة المعلومات والمصداقية هي المعايير الرئيسية لأمن نظام أسماء النطاقات.
أما توفر المعلومات فقد تم من خلال منع جميع محاولات تعطيل الخدمة وذلك من خلال التنوع الكبير لخادم الأسماء Name Serves ومن خلال الشبكات الأساسية التي تحوي مكونات DNS. لكن هناك بعض المبادئ
الهامة التي يجب أن تأخذ في الاعتبار للحماية من اكتشاف نقاط الضعف في بيئة اسم الخادم، محتوى zone وتحكم الوصول لمعاملات معينه في DNS.

4.1 الهجمات على مستضيف DNS وطرق الحماية منها

لا تختلف الهجمات على مستضيف DNS عن أي هجوم آخر على خدمة في الانترنت وتتلخص هذه الهجمات في الآتي:
• نقاط الضعف في نظام التشغيل والبرامج التي يستغلها المعتدي للوصول إلى أهدافه والتي قد تؤدي إلى تعطيل الخدمة.
• إغراق النظام بكثرة الطلبات من قبل المعتدي لتعطيله عن الخدمة.
• عمل برنامج تخريبي يظهر كـ DNS في نفس الشبكة والذي يعمل على قطع طلبات المستخدم أو تغييرها، كتحويله إلى موقع مختلف.
• الملفات الأساسية التي تتيح عملية التواصل قد تُفسد عن طريق الفيروسات والديدان أو تعدّل بطريقة غير شرعية من أشخاص غير مخول لهم مما يؤدي إلى تعطيل خدمة التواصل.
فحماية DNS تكمن في مدى كون مستضيفه يحتوي على نظام تشغيل آمن والحرص على عمل التحديثات الدورية له. أيضا المستضيف الذي يحتوي على خدمة DNS يجب ألاّ يحتوي على أي خدمة أخرى.

4.2 الهجمات على برنامج DNS وطرق الحماية منها

ذكرنا فيما سبق أن برنامج DNS يدير مستودع البيانات ويوفر وظيفة تحليل الأسماء من خلال خادم الأسماء (Name server)، أشهر مشاكل البرنامج والتي قد تستغل للهجوم عليه هي كالتالي:
• برنامج DNS ( خادم الأسماء Name Server) قد يحتوي على نقاط ضعف تؤدي إلى تعطيل الخدمة.
• برنامج DNS لا يعطي الصلاحيات الكافية لمنع الأشخاص الغير مخول لهم من قراءة وتعديل الملفات الأساسية أ و ملفات البيانات.
أفضل الحلول المقترحة لحماية البرنامج هي كالتالي:
• تشغيل آخر إصدار للبرنامج أو تشغيل إصدار مبكر مع تنزيل التحديثات المناسبة له.
• تشغيل برنامج خادم الأسماء (Name Server) مع حجب الامتيازات لكي لا يستغل المعتدي صلاحيات أحد المستخدمين فيقوم بحذف الملفات الأساسية أو التعديل عليها.
• عزل برنامج DNS عن وجود أي برنامج آخر معه لأن نقاط ضعف البرامج الأخرى قد تستغل لكسر برنامج DNS.
• عدم تشغيل برنامج DNS في أي جهاز ليس مصمم كالعمل على خادم الأسماء (Name sever)، لأن بعض إصدارات Unix يأتي معها تلقائيا هذا من البرنامج.
• توزيع خوادم الأسماء (Name servers) بحيث لا تكون في شبكة واحدة لضمان توفرها بحيث لو استطاع المعتدي الوصول إلى أحدها لا يتمكن من الوصول إلى الأخرى بسهولة.
• حصر موارد المعلومات لمستخدميها عن طريق تقسيم مستودع البيانات إلى قسمين الأول لتوفير الخدمات للعميل الخارجي والثاني لتوفير الخدمات الخاصة للعميل الداخلي. بحيث لا يستطيع العميل الخارجي من الحصول على الجزء الثاني بينما يتمكن العميل الداخلي من الحصول على كلا القسمين.

4.3 الهجمات على بيانات DNS وطرق الحماية منها

تتكون بيانات DNS من توعين وهي: الملفات الأساسية لتهيئة DNS و مستودع البيانات، فمحتويات كلا الملفين لها تأثير كبير في حماية DNS. يستطيع المعتدي الهجوم على DNS من خلال
• مستودع البيانات لاحتوائه على اسم البرنامج ورقم إصداره فبالتالي يسهل عليه اكتشاف نقاط الضعف للبرنامج عند معرفته لرقم الإصدار.
• الملفات الأساسية لـتهيئة DNS و مستودع البيانات قد تُفسد عن طريق الفيروسات والديدان أو تعدّل بطريقة غير شرعية من أشخاص غير مخول لهم مما يؤدي إلى إفساد الخدمة أو تعطيلها.
لحماية و لضمان مصداقية وصحة المعلومات، يجب التحكم في محتويات مستودع البيانات عن طريق برامج تقوم بوضع شروط على المحتويات نفسها بحيث أي تعديل على المحتوى لابد أن يتوافق مع الشروط.

الخلاصة

يعد نظام أسماء النطاقات DNS من أحد أهم الخدمات على شبكة الانترنت حيث يقوم بتسهيل عملية الوصول إلى خدمات الانترنت للمستخدمين عن طريق تحويل أسماء النطاقات Domain Name إلى أرقام IP address.
فلحماية هذا النظام و ضمان توفر المعلومات ومصداقيتها يجب معرفة الهجمات الممكن حدوثها على كل من مستضيف DNS وبرنامجه وبياناته ومن ثم معرفة طرق الحماية من هذه الهجمات.

الكاتب ayman

ayman

مواضيع متعلقة