الأدلة: إيه اللي يعتبر دليل؟

جارٍ التحميل…

01 / ملخص الدرس

الأدلة: إيه اللي يعتبر دليل؟

أنواع الأدلة: Screenshots ومخرجات الـ terminal والـ HTTP Requests، وقواعد الـ Screenshot الكويس، وتسمية الملفات.

02 / شرح الدرس مكتوبًا

نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.

أهلاً بيك. لو قلت للعميل: أنا دخلت على السيستم بتاعك… أول رد هيبقى: ورّيني. الكلام من غير دليل مالوش قيمة.

أنواع الأدلة: Screenshot بيبيّن النتيجة بعينك. مخرجات الـ terminal كنص، علشان تتنسخ وتتقري. والـ HTTP Request والـ Response كاملين، من Burp مَسَلاً.

والـ Screenshot الكويس ليه قواعد: يبيّن الـ IP أو الـ URL بتاع الهدف. يبيّن الوقت. يبيّن النتيجة بوضوح، ومن غير حاجات ملهاش لازمة. وتعلّم على المهم بمربع أحمر. وسمّي الملفات بنِزام: رقم الـ Finding، وبعدين وصف قصير. مش screenshot واحد، و screenshot اتنين. بعد أسبوع مش هتعرف مين ده. نعمل checklist بـ Python: كل دليل لازم يبقى معاه الملف، والـ Finding، والـ URL، والوقت، والدليل ده بيبيّن إيه. نشغّل… ناقص shows. يعني الدليل ده مش واضح بيبيّن إيه.

main.py
evidence = {
    "file": "06-sqli-login.png",
    "finding": "SQL Injection in login page",
    "url": "http://10.10.10.5/login.php",
    "time": "2025-03-10 14:22 UTC",
}

required = ["file", "finding", "url", "time", "shows"]
missing = [k for k in required if k not in evidence]
print("missing:", missing or "nothing")

المخرجات

missing: ['shows']

دورك: ضيف shows للـ evidence، بقيمة إن الـ error message بيبيّن نسخة الـ database، وشغّل تاني.

تمرين

ضيف "shows": "Database version in error message".

الحل: نشغّل… مفيش حاجة ناقصة.

main.py
evidence = {
    "file": "06-sqli-login.png",
    "finding": "SQL Injection in login page",
    "url": "http://10.10.10.5/login.php",
    "time": "2025-03-10 14:22 UTC",
    "shows": "Database version in error message",
}

required = ["file", "finding", "url", "time", "shows"]
missing = [k for k in required if k not in evidence]
print("missing:", missing or "nothing")

المخرجات

missing: nothing

الدرس الجاي: إزاي تِتْبِت إن الدليل ده ما اتعدّلش بعد ما خدته؟ يلا بينا.

03 / دروس المسار (21)
  1. 01ليه التقرير أهم حاجة في الـ Pentest
  2. 02مين بيقرا التقرير؟
  3. 03نظام Notes من أول دقيقة
  4. 04Activity Log: كل حاجة بالوقت
  5. 05خلّي الـ Terminal يسجّل لوحده
  6. 06الأدلة: إيه اللي يعتبر دليل؟انت هنا
  7. 07سلامة الأدلة: Hash و Chain of Custody
  8. 08إخفاء البيانات الحساسة (Redaction)
  9. 09خطوات إعادة التنفيد (Steps to Reproduce)
  10. 10الـ Impact: الخطر الحقيقي على البيزنس
  11. 11CVSS: الخطورة برقم
  12. 12الـ Risk Matrix: الاحتمال في الـ Impact
  13. 13ترتيب الأولويات والـ Quick Wins
  14. 14هيكل تقرير اختبار الاختراق
  15. 15الـ Executive Summary: صفحة للإدارة
  16. 16كتابة الـ Finding التقني
  17. 17توصيات الإصلاح اللي تتنفّد فعلاً
  18. 18خلّي Python يكتب التقرير
  19. 19المراجعة قبل التسليم والـ Retest
  20. 20تقرير امتحان OSCP
  21. 21المراجعة النهائية: من الـ Note للتقرير