- بواسطة x32x01 ||
لو بتفكر تدخل مجال الأمن السيبراني أو حتى عايز تأمّن موقعك أو تطبيقك، لازم تفهم الأول إن أي ثغرة أمنية بتمر بمراحل واضحة زي دورة حياة كاملة 👀
فهمك للمراحل دي مش بس هيزود خبرتك، لكن كمان هيخليك تفكر بعقلية المهاجم والمدافع في نفس الوقت.
خلينا نشرح الموضوع بشكل عملي وبسيط 👇
زي مثلًا:
الكود ده شكله عادي… لكن لو المستخدم دخل كود ضار بدل الاسم، ممكن يسبب مشاكل.
📌 علشان كده بتبقى الثغرات دي كنز حقيقي للمهاجمين.
📌 الفكرة ببساطة:
برنامج متوقع بيانات بحجم معين… والمهاجم يبعث حجم أكبر 💥
النتيجة؟
المهاجم يقدر يشغل كود على السيرفر كأنه صاحب النظام!
📌 مثال مبسط (فكرة خطيرة):
لو المستخدم دخل:
💀 خلاص… السيرفر انتهى!
📌 مثال:
مهم جدًا لاكتشاف:
الهدف:
ليه؟
ده بيخليك دايمًا متابع أحدث الثغرات الأمنية العالمية.
والأهم؟
إنك تبدأ تطبق وتجرّب بنفسك… لأن المجال ده بيعتمد على الخبرة العملية أكتر من أي حاجة.
فهمك للمراحل دي مش بس هيزود خبرتك، لكن كمان هيخليك تفكر بعقلية المهاجم والمدافع في نفس الوقت.
خلينا نشرح الموضوع بشكل عملي وبسيط 👇
إيه هي دورة حياة الثغرة الأمنية؟
أي ثغرة مش بتظهر فجأة وخلاص، لكن بتمر بعدة مراحل مهمة:1. مرحلة الإدخال (Introduction)
دي اللحظة اللي بيكتب فيها المبرمج كود فيه خطأ بسيط… غالبًا بيكون غير مقصود 😅زي مثلًا:
- نسيان التحقق من مدخلات المستخدم
- أو عدم فلترة البيانات
Code:
username = input("Enter username: ")
print("Welcome " + username) 2. مرحلة الاكتشاف (Discovery)
هنا حد يكتشف الثغرة، وده بيكون:- 👨💻 باحث أمني (White Hat)
- 🕶️ أو هاكر خبيث (Black Hat)
3. ثغرات اليوم صفر (Zero-Day)
دي أخطر مرحلة 🔥 لأن:- المخترق عارف الثغرة
- الشركة لسه مش عارفة عنها أي حاجة
📌 علشان كده بتبقى الثغرات دي كنز حقيقي للمهاجمين.
4. مرحلة التصحيح (Patching)
أخيرًا الشركة بتكتشف المشكلة وتعمل:- تحديث أمني
- أو Patch يقفل الثغرة
تصنيف الثغرات باستخدام CVSS
مش كل الثغرات زي بعض، فيه نظام عالمي اسمه CVSS (Common Vulnerability Scoring System) بيقيّم خطورة الثغرة من 0 لـ 10.مستويات الخطورة:
- 🟢 منخفضة (0.1 – 3.9)
تأثير ضعيف جدًا وغالبًا محتاجة وصول مباشر للجهاز - 🟡 متوسطة (4.0 – 6.9)
ممكن تسرّب بيانات بسيطة - 🟠 عالية (7.0 – 8.9)
تمكّن المهاجم من رفع صلاحياته أو الوصول لبيانات مهمة - 🔴 حرجة (9.0 – 10.0)
أخطر مستوى… تحكم كامل في النظام عن بُعد بدون باسورد!
أشهر أنواع الثغرات مع أمثلة عملية
خلينا ندخل في الجزء اللي يهم أي مبرمج أو Pentester 👇1. ثغرات فيضان الذاكرة (Buffer Overflow)
بتحصل غالبًا في لغات زي: ++C - C📌 الفكرة ببساطة:
برنامج متوقع بيانات بحجم معين… والمهاجم يبعث حجم أكبر 💥
النتيجة؟
- الكتابة فوق أجزاء من الذاكرة
- تنفيذ أوامر خبيثة
2. ثغرة التنفيذ عن بُعد (RCE)
دي تعتبر أخطر نوع ثغرات تقريبًا 😨المهاجم يقدر يشغل كود على السيرفر كأنه صاحب النظام!
📌 مثال مبسط (فكرة خطيرة):
Code:
import os
command = input("Enter command: ")
os.system(command) Code:
rm -rf / 3. ثغرات المنطق (Business Logic Flaws)
دي مش خطأ كود… دي خطأ تفكير 🤯📌 مثال:
- منتج سعره 100$
- المستخدم يغير السعر في الطلب إلى 1$
- السيرفر يقبل الطلب بدون تحقق
إزاي المحترفين بيكتشفوا الثغرات؟
لو عايز تدخل مجال اختبار الاختراق (Penetration Testing)، دي أهم الطرق 👇1. الفحص اليدوي (Manual Testing)
قراءة الكود سطر سطر 🧠مهم جدًا لاكتشاف:
- الأخطاء المنطقية
- مشاكل الـ Authorization
2. الفحص العشوائي (Fuzzing)
إرسال بيانات عشوائية بكميات كبيرة 🤖الهدف:
- تشوف البرنامج هيكراش إمتى
- وتكتشف الثغرة
3. الهندسة العكسية (Reverse Engineering)
تفكيك البرامج الجاهزة 🔍 مفيد لما:- مفيش Source Code
- وعايز تفهم النظام من جوه
نصيحة مهمة لو ناوي تتخصص 🔥
ابدأ تابع قاعدة بيانات CVE (Common Vulnerabilities and Exposures)ليه؟
- كل ثغرة ليها ID خاص
- بتتعلم من حالات حقيقية
- بتفهم الهجمات اللي بتحصل في العالم فعليًا
CVE-2023-XXXXده بيخليك دايمًا متابع أحدث الثغرات الأمنية العالمية.
خلاصة الموضوع
فهمك لـ:- دورة حياة الثغرة
- تصنيف CVSS
- أنواع الثغرات
- طرق اكتشافها
والأهم؟
إنك تبدأ تطبق وتجرّب بنفسك… لأن المجال ده بيعتمد على الخبرة العملية أكتر من أي حاجة.