كثيرا ما نسمع و نقرأ في الاخبار التقنية عن اكتشاف ثغرة جديدة في نظام معين من نوع ثغرة يوم الصفر او Zero day exploit ، و بما انك هنا فلا بد انك تريد معرفة المزيد عن هذا النوع من الثغرات.
في هذا المقال سنتعرف على ماهي ثغرة يوم الصفر؟ و سنتعرف على طرق الحماية منها و الحد من خطورتها.
ما هي ثغرة يوم الصفر Zero day exploit؟
ثغرة يوم الصفر، هي ثغرة امنية توجد في نظام أو خدمة معينة، بحيث صانع هذا النظام او مزود الخدمة لا يعلم بوجودها او لم يقم بترقيعها ،و عندما بقوم المهاجم باستغلال هذه الثغرة تسمى ثغرة يوم الصفر.
الفرق بين Exploit و vulnerability.
كثير من المبتدئين في مجال امن المعلومات لا يفرقون بين كلمة Exploit (استغلال) و كلمة Vulnerability(ضعف) ، و يرجع السبب في ذلك الى اخطاء تحدث اثناء الترجمة من اللغة الانجليزية الى اللغة العربية، بحيث يترجم الكثير كلمة Exploit بالثغرة، و هذا خطا بطبيعة الحال، اذن في هذه الفقرة سنتعرف على مفهوم Exploit و مفهوم Vulnerability و سنتعرف على الفرق بينهم.
يمكن ترجمة كلمة vulnerability بالعربية الى كلمة ثغرة او ضعف، و هي عبارة عن ثغرة امنية موجودة في نطام معين، في حين يقصد بكلمة Exploit (بالعربية استغلال) طريقة استغلال الثغرة الامنية، بحيث يقوم الهاكر او المهاجم بكتابة كود برمجي يقوم باستغلال تلك التغرة.
بعد ان تعرفنا على الفرق بين الثغرة و الاستغلال، دعونا نربط الموضوع مع ثغرات zero days.
ثغرة يوم الصفر Zero day exploit: ثغرة برمجية تم اكتشافها من طرف مهاجم قبل اكتشافها من طرف مالك النظام، و بما ان المالك لا يعلم بوجود هذه الثغرة، و بالتالي لا يوجد ترقيع لها، اذن فان احتمالية نجاح الهجوم هي 100 %.
استغلال ثغرة يوم الصفر : هي الطريقة التي يستعملها الهاكر من اجل اختراق نظام معين، مستغلا بذلك ثغرة يوم الصفر التي وجدها.
الفرق بين الثغرة و الخطا البرمجي.
عندما تسال شخصا عن مفهوم الثغرة البرمجية غالبا ما يقول: الثغرة هي خطا برمجي حدث اثناء برمجة برنامج معين، و هذا خطا كبير، حيث نتحدث عن الخطا البرمجي عندما يقوم المبرمج بخطأ برمجي اثناء كتابته للكود و بالتالي فان البرنامج لن يعمل من الاساس، حيث سيعطي محرر الاكواد بانه هناك خطا برمجي معين، مثلا نسيان إغلاق قوس دالة أو عدم احترام المسافة في لغة بايثون إلى غير ذلك، أما الثغرة يقصد بها وجود ضعف في البرنامج أو التطبيق، كثغرة SQL injection.
خطوات استغلال ثغرة يوم الصفر.
- يقوم المبرمج أو المطور بكتابة برنامج، و لكنه لا يعلم بوجود ثغرة امنية في البرنامج أو التطبيق؛
- يكتشف المهاجم وجود الثغرة الامنية في البرنامج قبل اكتشفها من طرف المطور أو قبل أن يقوم المطور بترقيعها؛
- يقوم المهاجم بكتابة كود برمجي يقوم باستغلال الثغرة الأمنية ؛
- يقوم المهاجم بمهاجمة البرنامج، و يقوم بسرقة المعلومات أو تخريب النظام؛
- يكتشف المطور الهجوم، و حينها يعلم بأن هناك ثغرة امنية؛
- يقوم المطور بالبحث عن الثغرة و يرسل الثحديثات إلى المستخدمين.
كيفية الحماية من ثغرات يوم الصفر.
لا توجد طريقة معينة تحميك من ثغرات يوم الصفر مئة بالمئة، و لكن هناك عدة احيياطات يمكن اتخادها من التقليل من خطورة هذه الثغرات.
- قم بتحديث البرامج و أنظمة التشغيل باستمرار، بحيث عندما يتم اكتشاف تغرة من نوع zero day، يتم تنزيل ترقيع لها Patch، و يتم ارسال التحديثات الى المستخدمين، و في حالة لم تقم بتنزيل هذا التحديث فانه ستتعرض للهجوم من خلال تلك الثغرة.
- استخدم جدران الحماية، من أجل التحكم في الترافيك الخاص بشبكتك؛
- قم بالتقليل من التطبيقات و البرامج المستعملة، لانه كلما كانت لديك برامج و تطبيقات اكثر، كلما ارتفعت احتمالية وجود ضعف في نظامك، قم بالغاء تثبيت جميع البرامج و التطبيقات التي لا تحتاج اليها دائما.
- توعية الموظفين و المستخدمين : يعتبر العنصر البشري اضعف حلقة في النطام، حيث مهما بلغت درجة امان النظام، يظل دائما معرض للاختراق في حالة كان العنصر البشري غير مؤهلا او غير واعي باساليب و تقنيات الهندسة الاجتماعية.
- استخدم مضادات الفيروسات : بطبيعة الحال من اهم البرامج و التطبيقات التي يجب ان يتوفر عليها اي نظام هي مضادات الفيروسات، بالرغم من انها ليست فعالة مئة بالمئة و يمكن التحايل عليها ،و لكنها تحمي من معظم الهجمات.
