تقينات اختبار مدى حصانة النظام ضد الاختراقات

الملخص:

نلاحظ في وقتنا الحاضر اعتمادنا الكبير على كل ما هو الكتروني. فنجد أن بياناتنا الشخصية من اسم وصفات ورقم السجل المدني محفوظة الكترونيا في قواعد للبيانات) Database) والتي تحتوي على وحدات ومساحات ضخمة لتخزين البيانات, أيضا من الملاحظ توجه قطاع المستشفيات في حفظ الملفات الطبية التي تخص المرضى الكترونيا. فأصبح عالمنا أشبه ما يكون داخل حافظة (Case) جهاز الكمبيوتر. ونظرا لخطورة المعلومات المخزنة الكترونيا, سواء كانت معلومات عسكرية ,مدنية, طبية وغيرها, لزم على المنظمات والشركات حماية وتقوية أنظمتها لردع الأعداء والمخترقين(Attackers) وضمان سرية هذه المعلومات. ومن الطرق المستخدمة لتوفير الحماية اللازمة للأجهزة والأنظمة هو عمل اختبار اختراق (Penetration test). يعتبر هذا الاختبار من أهم الطرق المستخدمة في تقوية وزيادة حماية الأنظمة, وذلك لان هذا الاختبار يهدف إلى قياس مدى قدرة الأنظمة ومقاومتها على تصدي الأخطار الخارجية, مما يساعد على الكشف مبكرا عن الثغرات الأمنية ونقاط الضعف قبل أن تستغل من قبل المهاجمون, ومن ثم العمل على إصلاحها والتقليل من احتمالية استغلالها. وقد تعددت التقنيات المستخدمة في أداء هذا الاختبار منها ما يقوم على البحث الشامل عن كل ما يتعلق بالمنظمة من خلال الانترنت ومنها ما يقوم على الكشف عن البنية التحتية لشبكة المنظمة وغيرها. والجدير بالذكر هنا أن هذه التقنيات هي مشابهة لتلك المستخدمة من قبل المخترقون. لهذا نجد سبب مساهمة هذا الاختبار في تقوية الأنظمة وحمايتها نظرا لاستناده على طرق يسلكها المخترقون أنفسهم لاختراق الأنظمة.

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

اختبار الاختراق, حصانة النظام, مخترق أخلاقي, تقنيات, ثغرات أمنية.

المقدمة:

نرى كثير من الشركات في السابق وحتى الآن ما تلبث أن تصدر نظام جديد إلا ويتم اختراقه في غضون أيام أو أسابيع قليله, وعلى الرغم من تزويدها بأجهزة وبرامج لحمايتها إلا أن هذا لا يجدي نفعا بسبب إمكانية توافر ثغرات أمنية لم تكن ظاهرة لدى الفريق الذي قام بإنشاء النظام. لذلك نجد أن من أهم الخطوات الأساسية والأولية بعد تكوين وإنشاء النظام هو عمل اختبار الاختراق (Penetration test) عليه, وذلك لقياس مدى قابلية النظام وحصانته على تصدي الأخطار الخارجية والتي عادة ما تكون من قبل المخترقين ممن يمتلكون الدوافع الخبيثة. هذا الاختبار يساعد على الكشف عن الثغرات الأمنية مبكرا مما يوفر الفرصة والوقت الكافي لسد الثغرات وتقوية أجهزة الحماية وسن قوانين وسياسات أمنية أقوى للتقليل من مخاطر استغلال هذه الثغرات من قبل المخترقين  للوصول إلى النظام. يتم هذا الاختبار عن طريق تحليل النظام وذلك من خلال تجميع المعلومات عن البنية التحتية للنظام والكشف عن الوسائل المستخدمة لحمايته, وعلى ذلك يتم التعرف على نقاط الضعف والثغرات ثم عمل محاكاة لعمل المخترق في استغلال هذه العيوب والثغرات. حاليا تقوم الشركات الراغبة برفع مستوى أمن أنظمتها بتوظيف أناس ذو مهارات عالية في مجال الاختراق وذوي نوايا حسنة اتجاه المنظمات للقيام بعمل اختبار الاختراق. ويطلق على هؤلاء الناس في أوساط مجتمع الأمن والحماية بالـمخترقين الأخلاقيين (Ethical hackers) ذلك لأنهم يستخدمون مهاراتهم الحاسوبية والبرمجية في سبيل تحسين وسائل الأمن والحماية لأي نظام. طريقة اختبار الاختراق أثبت فعاليته ونجاحه, وذلك لان المخترق الأخلاقي يقوم باستخدام  أدوات وتقنيات مماثلة لتلك المستخدمة من قبل المهاجمين. وسوف أقوم في هذا المقال بإذن الله بطرح تلك التقنيات المستخدمة لأداء هذا الاختبار. ويمكن للقارئ الكريم قراءة هذا المقال وفهمه إذا كان لديه خلفيه وخبره ولو بسيطة في قواعد البيانات أو الشبكات.

التقنيات المستخدمة في اختبار الاختراق:

تعددت في وقتنا الحاضر التقنيات والطرق المستخدمة لأداء اختبار الاختراق, وكل ذلك في سبيل التأكد من قوة حصانة الأنظمة. ولكن هذا لا يعني أن يجب علينا استخدام جميع هذه التقنيات في كل نظام نريد اختباره. وذلك نظرا لاختلاف تكوين الأنظمة و بيئاتها. ولذلك يجب على المخترق الأخلاقي فهم النظام المراد اختباره وتحديد التقنيات والطرق المناسبة للنظام وذلك لتحقيق النتائج المرغوبة ضمن الجدول الزمني المخصص لهذا الاختبار. ومن تلك التقنيات والطرق المستخدمة في هذا الاختراق هي:

·        البحث السلبي (Passive research):

يتعلق البحث السلبي بجمع المعلومات المتعلقة بنظام المنظمة وطريقة تكوينها والهيكل الأمني لها. ويتم جمع هذه المعلومات من خلال المصادر العامة والمتاحة على الانترنت. لكن يجب الأخذ بعين الاعتبار أن هذه المعلومات من الممكن أن تكون غير كاملة أو غير دقيقه.

·        رصد المصدر المفتوح (Open source monitoring):

هذه التقنية تعتمد على استخدام الكلمات المفتاحية الهامة لدى المنظمة أثناء البحث في الانترنت وذلك لجمع المعلومات عن المنظمة. هذه التقنية تساعد على الكشف عن البيانات المسربة عن المنظمة, مما يتيح للمنظمة سن القوانين والسياسات الصارمة لضمان السرية التامة لمعلوماتها.

·        خريطة الشبكةNetwork mapping) ):

في اختبار الاختراق من الضروري أن يكون لدى المخترق الأخلاقي تصور وتخيل عن هيكل الشبكة (Network structure ) وطريقة تكوينها, وتحديد الطريقة التي يتم فيها تشغيل نظام الشبكة وكيفية إدارتها. ونظرا لأن الشبكات في نمو مستمر سواء على نطاق المنظمة أو على نطاق العالم, مما أدى إلى زيادة تعقيدها ولذلك تقوم طريقة خريطة الشبكة بالتخفيف من حدة هذا التعقيد ليسهل على المخترق الأخلاقي فهم العلاقات بين الأجهزة في كل شبكة. يوضح الرسم التوضيحي 1 كيف يكون شكل خريطة الشبكة.

رسم توضيحي 1:خريطة الشبكة [16]

هناك ثلاث تقنيات رئيسية تستخدم في طريقة خريطة الشبكة وهي :

 

  1. بروتوكول إدارة الشبكات البسيطة (Simple Network Management Protocol (SNMP)):

يعمل هذا البروتوكول على تسهيل عملية تبادل المعلومات بين الأجهزة التي تقوم بإدارة الشبكة. ويتيح للمسئولين القائمين على الشبكة من إدارة أداء الشبكة, وحل مشاكلها, وتقديم التخطيط المناسب لنمو الشبكة. لذلك يستخدم هذا البروتوكول في رسم خريطة الشبكة من أجل بناء الشبكة.

 

 

  1. التحقيق النشط (Active Probing):

هذا التحقيق يعمل على قياس سلوك الشبكة في حالة ازدحامها بالمستخدمين. على سبيل المثال هناك سلوكيات بسيطة مثل رصد حالة الاتصال ويتم الكشف عنها باستخدام الأمر (Ping). وهناك سلوكيات معقدة مثل رصد سلوك النطاق الترددي (Bandwidth) ومستويات الازدحام (Traffic levels) وغيرها من الصفات التي تتعلق بالشبكات.

 

  1. تحليلات المسار (Route analytics):

وتعمل هذا التقنية على تحليل وتشخيص المشكلات التي تحدث في طبقة التوجيه  (routing layer), مما يساعد على تصور وفهم دينامكية الشبكة, وتحديد المسارات التي يستخدمها بروتوكول الإنترنت  (IP)خلال نقل المعلومات عبر الموجهات (Routers) الموجودة في الشبكة.

 

·        نظام التشغيل البصمات ( :(OS fingerprinting

تعتمد هذه الطريقة على استخدام المعلومات التي تم جمعها من خلال طريقة البحث السلبي عن المنظمة, ومن أهم المعلومات الأساسية والرئيسية هي نوعية نظام التشغيل التي تستخدمه المنظمة. لأن مجرد معرفة هذه المعلومة من قبل المخترق تتيح له وتسهل عليه معرفة الثغرات الأمنية التي تتعلق بهذا  النوع من الأنظمة ومن ثم استغلالها. أيضا هناك عدة طرق وتقنيات أخرى لمعرفة نوعية نظام التشغيل المستخدم من قبل المنظمة منها استخدام بروتوكول التحكم بالإرسال (Transmission Control Protocol (TCP) ) أو باستخدام بروتوكول التحكم برسائل الإنترنت (Internet Message Protocol (ICMP)) وغيرها من التقنيات.

  1. بروتوكول التحكم بالإرسال (Transmission Control Protocol (TCP) ):

لفهم الإستراتيجية المتبعة في هذه الطريقة يستلزم فهم بنية رأس (Header)هذا البروتوكول أو بما يعرف لدى العامة بالترويسة, كما هو موضح في الجدول1 بنية لـ (TCP header).

32 28 24 20 16 12 8 4
عنوان بوابة الوجهة ( Destination port) عنوان بوابة المصدر( Source port)
الرقم التسلسلي (Sequence Number)
رقم التأكيد (Acknowledgement Number)
حجم النافذة (Window Size) أعلام (Flags) محجوز(Reserved) مقدار الإزاحة ((Offset
مؤشر البيانات المستعجلة (Urgent Pointer) مجموع الاختبار (Checksum)
حشوه (Padding) خيارات (Options)
البيانات (Data)

 

 

 

 

 

 

 

 

 

 

 

جدول 1:حقول رأس (ترويسة) بروتوكول التحكم بالإرسال (TCP header fields)

 

كل ما يهمنا في هذا الجدول هو حقول الأعلام, والتي تتكون من 6 حقول. هذه الحقول هي التي يتم من خلالها معرفة نوع نظام التشغيل المستخدم من قبل المنظمة. وذلك بسبب أن كل نظام تشغيل يتعامل مع هذه الحقول بطريقة مختلفة ومميزة عن بقية الأنظمة.

 

  1. بروتوكول التحكم برسائل الإنترنت (Internet Message Protocol (ICMP)):

أيضا لفهم الإستراتيجية المتبعة في هذه الطريقة يستلزم فهم بنية رأس (Header)هذا البروتوكول, كما هو موضح في الجدول2  بنية لـ (ICMP header).

 

 

32 28 24 20 16 12 8 4
مجموع الاختبار (Checksum) الرمز (Code) النوع (Type)
البيانات (Data)

جدول 2: حقول رأس بروتوكول التحكم برسائل الإنترنت  (fields  ICMP header)

أما ما يهمنا في هذا الجدول هو حقل النوع. هذا الحقل تختلف قيمته من طلب إلى طلب آخر والذي من خلال تلك القيم يتم الكشف عن هوية نظام التشغيل. ولا يسعني المجال لذكر قيم هذه الحقول نظرا لوفرة وغزارة معلوماتها وكونها خارجة عن نطاق موضوعنا, ويمكن للقارئ الكريم القيام بالبحث في هذا المجال للاستفادة منه. نجد أن بعد ما تم شرحه من البروتوكولات المستخدمة لإيجاد نوع وهوية نظام التشغيل, صعوبة إخفاء هذه المعلومة خاصة إذا كان المخترق ذو مهارة عالية. وكل ما على المنظمة هو وضع أجهزة حماية وبرامج مكافحة على شبكاتها وأنظمتها للحد من نسبة الهجوم عليها وعلى أنظمتها التشغيلية.

·        الخداع (Spoofing):

وهي طريقة لخداع المستخدم الموجود على الشبكة عن طريق إرسال حزم(Packets ) له باستخدام عنوان انترنت موثوق لدى المستخدم (المستقبل), مما يجعله يظن أنها جاءت من مصدر موثوق. تستخدم هذه الطريقة في اختبار الاختراق للدخول إلى أجهزة الكمبيوتر المبرمجة فقط بالرد على أجهزة كمبيوتر معينة. والتي قد تؤدي إلى البوح عن معلومات سرية وحساسة عن المنظمة لأجهزة غير موثوقة.  ومن ثم المحاولة على حل هذه المشكلة.

 

·        استنشاق الشبكة (Network sniffing):

وتقوم هذه الطريقة بالتقاط (استنشاق) المعلومات المتنقلة عبر الشبكة. وتعتبر طريقة  استنشاق الشبكة من أهم الطرق المستخدمة في عملية جمع المعلومات نظرا لما تقوم به من جمع المعلومات الحساسة والسرية كالكلمة السرية أو المحادثات التي تتم بين جهازين في الشبكة. وللأداء هذه الطريقة يجب وضع واجهة الشبكة (Network Interface), وهو عبارة عن النقطة التي تقوم بربط جهاز الكمبيوتر بالشبكة العامة أو الخاصة, إلى الوضع المختلط (Promiscuous mode) وهذا الوضع يقوم بالسماح للجهاز الكمبيوتر الموجود على الشبكة بالتقاط وقراءة جميع الحزم (Packets) المتنقلة عبر الشبكة. يوضح الرسم التوضيحي 2 تصور لهذه العملية.

 

 

رسم توضيحي 2: تصور لعملية استنشاق الشبكة[17]

 

·        هجوم أحصنة الطراودة (Trojan attack ):

“وهي عبارة عن برامج خبيثة, تخفي حقيقتها في بداية الأمر ثم تقوم بالكشف عن نفسها وقت تنشيطها.
تقوم أحصنة الطراودة بإخفاء نفسها عن طريق التظاهر بأنها برنامج مجاني ومسالم كبرامج التقويم (CALENDER) وغيرها من البرامج المثيرة للاهتمام”[4]. وحالما يتم تحميلها على جهاز الكمبيوتر تبدأ بتمهيد الطريق للمخترقين الفاسدين للتحكم بالضحية بسهولة ولالتقاط المعلومات الهامة. تستخدم هذه الطريقة في اختبار الاختراق لإرسال هذا النوع من البرامج الخبيثة للأجهزة الموجودة على الشبكة ثم المحاولة على حل هذه المشكلة والتقليل من نسبة حدوثها.

·        هجوم القوة الغاشمة (Brute force attack):

وتقوم هذه الطريقة باستعمال مجموعه ضخمة من الاحتمالات العشوائية بهدف إيجاد كلمة السر المستخدمة. وتستخدم هذه الطريقة في اختبار الاختراق لقياس مدى قوة الكلمات السرية المستخدمة من قبل المنظمة وموظفيها. ويتم حل مشكلة كلمات السر الضعيفة وسهلة التخمين بوضع سياسات وقواعد صارمة من قبل المنظمة للأسلوب المتبع في اختيار كلمات السر, على سبيل المثال: أن لا يقل طول الكلمة عن 8 حروف, أن تكون خليط من الحروف والأرقام والرموز, أن يتم تغير الكلمة السرية كل شهر مثلا, وغيرها من السياسات.

·        تحليل/مسح نقاط الضعف (Vulnerability scanning/analysis):

وهي عبارة عن مسح وتحليل شامل عن البنية التحتية للنظام والشبكة التي يرتبط بها وذلك بهدف البحث عن الثغرات الأمنية ونقاط الضعف التي يواجهها بسبب نوع قاعدة البيانات المستخدمة. لأداء هذا النوع من التحليل يتم استخدام أدوات وتقنيات تعمل بشكل آلي للكشف هذه الثغرات الأمنية مثل Nessus , GFI LANguard,Retina Core Impact , ISS Internet Scanner,Sara , QualysGuard, SAINT , MBSA .

 

 

·        تحليل الاحتمالات (Scenario analysis):

وتعتبر آخر طريقة يتم تنفيذها في اختبار الاختراق. حيث يتم عن طريقها استغلال الثغرات الأمنية التي تم اكتشافها في مرحلة تحليل نقاط الضعف. وتكون صور الاستغلال التي يتم تنفيذها من قبل المخترقين الفاسدين على هيئة سرقة معلومات, كلمات السر, أو العبث بالنظام. فيحاول المخترق الأخلاقي هنا أن يتبع نفس طريقة المخترقين الفاسدين في استغلال تلك الثغرات, وذلك لقياس مدى سهولة استغلال; ومن ثم العمل على سد تلك الثغرة أو التقليل من نسبة استغلالها .

 

 

 

الخاتمة:

بما أن المخترق الأخلاقي يقوم باستخدام تقنيات مشابه لتلك المستخدمة من قبل المخترقين الفاسدين, فيستوجب عليه قبل البدء بالعمل الحصول على إذن رسمي لأداء اختبار الاختراق, نظرا لان تلك التقنيات مقيدة بقوانين ولوائح أمنية.

 

الكاتب ayman

ayman

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

اترك رداً