الدرس 9 من 24

تحليل الثغرات والاستغلال

بحث الثغرات واكتشاف الاستغلالات

4 دقيقة للقراءة

بعد الاستطلاع، تحتاج لتحديد الثغرات القابلة للاستغلال. يغطي هذا الدرس كيفية البحث وإيجاد الاستغلالات العامة.

عملية الاستغلال

نتائج الاستطلاع → بحث الثغرات → اختيار الاستغلال → التعديل → التنفيذ
         ↓                ↓              ↓          ↓         ↓
    إصدارات الخدمات    البحث في قواعد البيانات   مطابقة الإصدار   إصلاح shellcode   الحصول على الوصول
    معلومات OS         قراءة التنبيهات          التحقق من الموثوقية   تحديث IPs

Searchsploit (أداة أساسية)

Searchsploit هو واجهة سطر أوامر لـ Exploit-DB، تحتوي على آلاف الاستغلالات.

الاستخدام الأساسي

# البحث عن استغلالات
searchsploit apache 2.4
searchsploit vsftpd
searchsploit windows smb

# البحث بـ CVE
searchsploit CVE-2021-44228

# مطابقة دقيقة
searchsploit -e "Apache 2.4.49"

الأعلام المفيدة

العلمالغرضمثال
-wإظهار رابط Exploit-DBsearchsploit -w vsftpd
-mنسخ الاستغلال للدليل الحاليsearchsploit -m 49757
-xفحص/فتح الاستغلالsearchsploit -x 49757
-pإظهار المسار الكاملsearchsploit -p 49757
-tالبحث في العنوان فقطsearchsploit -t apache
--excludeاستبعاد مصطلحاتsearchsploit smb --exclude="dos"

سير العمل العملي

# 1. البحث عن ثغرة الخدمة
searchsploit "OpenSSH 7.2"

# 2. عرض الاستغلال
searchsploit -x linux/remote/40136.py

# 3. النسخ لدليل العمل
searchsploit -m linux/remote/40136.py

# 4. الفحص والتعديل حسب الحاجة
nano 40136.py

قواعد بيانات الاستغلالات عبر الإنترنت

Exploit-DB (exploit-db.com)

المصدر الرئيسي للاستغلالات العامة:

الميزات:
├── كود استغلال كامل
├── استغلالات موثقة (معلّمة بعلامة صح)
├── قاعدة بيانات Google Hacking
├── أوراق و shellcodes
└── البحث بـ: CVE، المنصة، النوع، التاريخ

GitHub

العديد من الاستغلالات مستضافة على GitHub:

# البحث في GitHub عن استغلالات
# النمط: CVE-YYYY-XXXXX

# أمثلة البحث:
"CVE-2021-44228 exploit"
"MS17-010 python"
"EternalBlue poc"

موارد أخرى

الموردالرابطملاحظات
Packet Stormpacketstormsecurity.comاستغلالات وأدوات
0day.today0day.todayاستغلالات حديثة
Rapid7rapid7.com/dbوحدات Metasploit
NVDnvd.nist.govتفاصيل CVE

تقييم الاستغلالات

قبل تشغيل أي استغلال، قيّمه:

قائمة المراجعة:
□ هل يطابق الإصدار الدقيق؟
□ هل هو موثق/موثوق؟
□ بأي لغة مكتوب؟
□ هل يتطلب تعديل؟
□ ماذا يفعل الكود فعلياً؟
□ هل هناك تبعيات؟
□ هل هو DoS أم RCE فعلي؟

قراءة كود الاستغلال

اقرأ الكود دائماً قبل التشغيل:

# ابحث عن هذه الأقسام:
# 1. تكوين الهدف
RHOST = "192.168.1.10"  # غيّر هذا
RPORT = 445             # تحقق من المنفذ
LHOST = "192.168.1.5"   # عنوان IP الخاص بك
LPORT = 4444            # منفذ المستمع الخاص بك

# 2. Payload/shellcode
# تحقق من صحة البنية (x86/x64)
# تحقق إذا كان IP/المنفذ يحتاج تحديث

# 3. التعليقات والاستخدام
# اقرأ ملاحظات المؤلف
# تحقق من المتطلبات

بحث CVE

فهم صيغة CVE

CVE-2021-44228
│    │    │
│    │    └── رقم التسلسل
│    └── سنة الاكتشاف/التعيين
└── الثغرات والتعرضات الشائعة

خطوات البحث

# 1. البحث في NVD للتفاصيل
# nvd.nist.gov/vuln/detail/CVE-XXXX-XXXXX

# 2. فحص درجة CVSS
# حرجة (9.0-10.0)، عالية (7.0-8.9)، متوسطة (4.0-6.9)، منخفضة (0.1-3.9)

# 3. قراءة تنبيه البائع
# فحص الإصدارات المتأثرة
# البحث عن التصحيحات/الحلول البديلة

# 4. البحث عن PoC
searchsploit CVE-2021-44228
# بحث GitHub

مطابقة الإصدار

مطابقة الإصدار الدقيقة أمر حاسم:

لافتة الخدمة: Apache/2.4.49 (Unix)
البحث: searchsploit "apache 2.4.49"
الاستغلال: Apache 2.4.49 - Path Traversal
التحقق: فحص تعليقات الاستغلال للإصدارات الدقيقة

التعامل مع نطاقات الإصدار

الاستغلال يذكر: "متأثر: 2.4.0 - 2.4.49"
إصدار الهدف: 2.4.41

النتيجة: ✓ الهدف ضمن النطاق المتأثر

أنواع الاستغلالات التي يجب معرفتها

النوعالوصفمثال
تنفيذ الكود عن بعدتنفيذ أوامر عن بعدMS17-010
تصعيد الصلاحيات المحليالارتقاء من مستخدم إلى rootDirtyPipe
تجاوز المصادقةتخطي آليات تسجيل الدخولبيانات اعتماد افتراضية
اجتياز المسارالوصول لملفات خارج webroot../../../etc/passwd
حقن SQLالتلاعب بقاعدة البيانات' OR 1=1--
حقن الأوامرتنفيذ أوامر OS; id

نصائح تعديل الاستغلالات

معظم الاستغلالات تحتاج تعديل قبل الاستخدام:

# التعديلات الشائعة المطلوبة:
# 1. عناوين IP
RHOST = "10.10.10.10"   # عنوان IP الهدف
LHOST = "10.10.14.5"    # عنوان IP الخاص بك (tun0)

# 2. المنافذ
RPORT = 80              # منفذ الهدف
LPORT = 443             # منفذ المستمع الخاص بك

# 3. Shellcode
# توليد shellcode جديد مع msfvenom
# msfvenom -p linux/x64/shell_reverse_tcp LHOST=x LPORT=y -f python

# 4. إصدار Python
#!/usr/bin/env python3  # تحديث shebang

# 5. التبعيات
# pip install requests pwntools

في الدرس التالي، سنغطي إنشاء والتعامل مع shells للحفاظ على الوصول. :::

مراجعة سريعة: كيف تجد هذا الدرس؟

اختبار

الوحدة 3: تحليل الثغرات والاستغلال

خذ الاختبار
نشرة أسبوعية مجانية

ابقَ على مسار النيرد

بريد واحد أسبوعياً — دورات، مقالات معمّقة، أدوات، وتجارب ذكاء اصطناعي.

بدون إزعاج. إلغاء الاشتراك في أي وقت.