الـ Executive Summary: صفحة للإدارة
إزاي تكتب ملخص للإدارة من غير مصطلحات: الوضع العام، وأخطر المشاكل وأثرها على البيزنس، والتوصيات الأساسية، في صفحة واحدة.
نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.
أهلاً بيك. المدير عنده خمس دقايق. هيفتح التقرير، يقرا أول صفحة، ويقفله. لو الصفحة دي ما وصّلتش الرسالة، التقرير كله ضاع.
الـ Executive Summary الكويس بيرد على أربع أسئلة: عملنا إيه؟ اختبرنا إيه، وإمتى. الوضع عامل إزاي؟ كويس ولا خطير. إيه أخطر حاجة، ومعناها إيه للبيزنس. والمطلوب إيه دلوقتي.
والقواعد: من غير مصطلحات تقنية، أو اشرحها في كلمتين. صفحة واحدة، أو اتنين بالكتير. أرقام وجدول أو رسم بسيط لعدد الـ Findings. واكتب الحاجات الكويسة كمان، مش المشاكل بس. نخلّي Python يعدّ الـ Findings، ويكتب الملخص بجمل بسيطة. نشغّل… ملخص المدير يفهمه في نص دقيقة.
findings = ["Critical", "Critical", "High", "Medium", "Medium", "Low"]
counts = {}
for sev in findings:
counts[sev] = counts.get(sev, 0) + 1
summary = (
f"We tested the web shop and found {len(findings)} issues: "
f"{counts.get('Critical', 0)} critical and {counts.get('High', 0)} high. "
"An attacker on the internet can steal all customer data. "
"We recommend fixing the critical issues within 7 days."
)
print(summary)المخرجات
We tested the web shop and found 6 issues: 2 critical and 1 high. An attacker on the internet can steal all customer data. We recommend fixing the critical issues within 7 days.
وخد بالك من الأسلوب: قول: مهاجم من الإنترنت يقدر يسرق بيانات العملا. ما تقولش: لقينا SQLi في الـ parameter id. التفاصيل دي مكانها في الجزء التقني. دورك: بعد الملخص، اطبع عدد كل مستوى خطورة في سطر لوحده، من Critical لحد Low، علشان يتحط في جدول.
اطبع كل مستوى وعدده بعد الـ summary.
الحل: نشغّل…
findings = ["Critical", "Critical", "High", "Medium", "Medium", "Low"]
counts = {}
for sev in findings:
counts[sev] = counts.get(sev, 0) + 1
summary = (
f"We tested the web shop and found {len(findings)} issues: "
f"{counts.get('Critical', 0)} critical and {counts.get('High', 0)} high. "
"An attacker on the internet can steal all customer data. "
"We recommend fixing the critical issues within 7 days."
)
print(summary)
for sev in ["Critical", "High", "Medium", "Low"]:
print(f"{sev}: {counts.get(sev, 0)}")المخرجات
We tested the web shop and found 6 issues: 2 critical and 1 high. An attacker on the internet can steal all customer data. We recommend fixing the critical issues within 7 days. Critical: 2 High: 1 Medium: 2 Low: 1
الدرس الجاي: ننزل للتفاصيل… إزاي تكتب Finding تقني كامل. يلا بينا.
03 / دروس المسار (21)
- 01ليه التقرير أهم حاجة في الـ Pentest
- 02مين بيقرا التقرير؟
- 03نظام Notes من أول دقيقة
- 04Activity Log: كل حاجة بالوقت
- 05خلّي الـ Terminal يسجّل لوحده
- 06الأدلة: إيه اللي يعتبر دليل؟
- 07سلامة الأدلة: Hash و Chain of Custody
- 08إخفاء البيانات الحساسة (Redaction)
- 09خطوات إعادة التنفيد (Steps to Reproduce)
- 10الـ Impact: الخطر الحقيقي على البيزنس
- 11CVSS: الخطورة برقم
- 12الـ Risk Matrix: الاحتمال في الـ Impact
- 13ترتيب الأولويات والـ Quick Wins
- 14هيكل تقرير اختبار الاختراق
- 15الـ Executive Summary: صفحة للإدارةانت هنا
- 16كتابة الـ Finding التقني
- 17توصيات الإصلاح اللي تتنفّد فعلاً
- 18خلّي Python يكتب التقرير
- 19المراجعة قبل التسليم والـ Retest
- 20تقرير امتحان OSCP
- 21المراجعة النهائية: من الـ Note للتقرير