التخطيط وRoE — المفاهيم
أنت تعرف كيف تهاجم جهازًا في مختبرك الخاص. الآن ندخل العالم الحقيقي: ذلك الذي يدفع فيه العميل لك لمهاجمة ممتلكاته هو. بين الاثنين، توجد ورقة واحدة. بدون هذه الورقة، تتوقف مسيرتك المهنية عند أول عملية مسح.
اختبار اختراق بدون تفويض مكتوب هو اقتحام معلوماتي. إنه جريمة في جميع الولايات القضائية المتقدمة. ليس "الأمر يتوقف على...". وليس "إن انتبهت جيدًا". إنها جريمة. توجد الورقة لهذا السبب الوحيد: إنها تحوّل هجومك إلى خدمة مطلوبة.
ما ستتقنه بعد هذا الدرس
- تسمية القطع التعاقدية الخمس لمهمة اختبار اختراق.
- التمييز بين scope وRoE وSOW وعقد الخدمة — أربع وثائق يخلط بينها 90% من المبتدئين.
- صياغة نطاق يصمد أمام محامٍ وأمام فريقك التقني.
- توقّع الحالات التي لا يملك فيها العميل نفسه الحق في تفويض الهجوم (SaaS، الاستضافة المشتركة، الموظفون الخاضعون للمراقبة).
- معرفة ما يجب فعله عندما، في خضم المهمة، تكتشف اختراقًا سابقًا موجودًا مسبقًا (يحدث هذا أكثر مما نظن).
1. الرئيس الحقيقي لاختبار الاختراق: المحامون
على الورق، العميل هو رئيسك. لكن في الواقع، من يقرر أين يحق لك الضغط على الزر هو الجهة القانونية. المختبِر المبتدئ الذي لا يفهم هذا يضع نفسه في وضعيتين:
- يوقّع على شيء غامض، يفعل ما يظنه مفيدًا، يتجاوز النطاق، يتذمر العميل، لم يكن العقد دقيقًا بما يكفي، ولا أحد محمي.
- يرفض كل ما ليس في RoE — حتى اختبارًا بديهيًا — لأن RoE هو القانون. هذا هو الموقف الثاني الذي نتبناه. دائمًا.
احفظ القاعدة الوحيدة: ما لم يُكتب، لا وجود له. الاتفاق الشفهي لا ينجو من حادثة. ولا البريد الإلكتروني غير الموقّع أيضًا.
2. القطع التعاقدية الخمس
تتضمن المهمة الكاملة خمس وثائق. لا تخدم الغرض نفسه، ويجب عدم الخلط بينها.
| القطعة | الدور | من يصوغها |
|---|---|---|
| NDA (Non-Disclosure Agreement) | تُلزمك بالسرية. تُوقَّع قبل حتى مناقشة النطاق. | العميل (غالبًا)، ويوقّعها الطرفان. |
| SOW (Statement of Work) | ما الذي نفعله، بكم، وعلى مدى كم يوم. العرض المُتعاقَد عليه. | أنت (مقدّم الخدمة). |
| RoE (Rules of Engagement) | كيف ننفّذه: النطاق التقني، النوافذ الزمنية، التصعيدات. | أنت، بمصادقة العميل. |
| تفويض الهجوم (letter of authorization) | الدليل الذي تُظهره إذا اشتبه بك طرف ثالث (مزوّد سحابي، MSSP). | العميل، مطبوع وموقّع. |
| العقد الإطاري | المسؤولية، التأمين، القانون المعمول به. | جهات قانونية من كلا الطرفين. |
RoE هو وثيقة عملك اليومية. البقية يعمل في الخلفية، لكن يجب أن توجد جميعها قبل أن تُطلق nmap.
تعريف — لون الصندوق، أو ثلاث طرق لبدء مهمة
يحدد RoE كمية المعلومات التي يمنحك إياها العميل قبل أن تبدأ. فرضت نفسها ثلاث وضعيات، وكل واحدة تغيّر كليًا سير المهمة.
في black-box، يمنحك العميل نطاقًا فقط — عنوان IP، اسم نطاق، رابط URL — ولا شيء آخر. هذه هي الحالة الأقرب إلى مهاجم حقيقي اختار الهدف لكنه لا يعرف شيئًا عن داخله. يتطلب هذا وقتًا أطول في الاستطلاع، ويكلّف العميل أكثر بمعادل أيام العمل.
في grey-box، يزوّدك العميل بحساب مستخدم شرعي أو أكثر، وربما وصفًا موجزًا للبنية. هذا هو أفضل توازن بين الجودة والتكلفة لمعظم مهام التطبيقات: تتجاوز مرحلة الاستطلاع الخارجي لتذهب مباشرة إلى حيث تختبئ الثغرات الحقيقية، في المناطق المصادَق عليها من التطبيق.
في white-box أو crystal-box، يسلّمك العميل الشيفرة المصدرية، ومخططات البنية، وإجراءات التشغيل، وأحيانًا حتى صلاحيات إدارية. يتحول الاختبار إلى مراجعة تصميم مدعومة بهجوم. هذا ما يُختار لبرمجية قبل طرحها في السوق، أو للتحقق من بنية إنتاجية جديدة.
يعرف المختبِر المتمرّس كيف يوصي باللون المناسب: black-box لطمأنة جهة تنظيمية، grey-box لتغطية أقصى مساحة ممكنة، white-box لمكوّن حرج قد تكون لأصغر ثغرة فيه عواقب وخيمة.
3. RoE: ما يجب أن يكون بداخله بلا نقاش
يحتوي RoE الأدنى، ذلك الذي لا نقاش فيه، على ثمانية أقسام. إن غاب أحدها، ارفض البدء.
3.1. النطاق — خريطة ساحة المعركة
النطاق ليس أبدًا "بنية العميل التحتية". إنه:
- قائمة عناوين IP أو نطاقات CIDR. مثال:
203.0.113.0/28،198.51.100.42. - قائمة أسماء نطاقات ونطاقات فرعية. مثال:
www.client.com،api.client.com. كل ما ليس مُدرَجًا لا يمكن استهدافه، حتى لو وجدته. - قائمة تطبيقات. ويب، جوال، API، أنظمة SCADA. كل واحد بإصداره.
- حسابات اختبار يوفّرها العميل (اسم مستخدم/كلمة مرور لاختبار grey-box أو white-box).
- استثناءات صريحة. طابعة الإدارة العامة، خادم الرواتب، خادم AS/400 القديم الذي يعمل منذ 1998 والذي لا يجرؤ أحد على إطفائه.
يمنحك عميل "نطاقه client.com". تفحص mail.client.com — لكن هذا النطاق الفرعي يشير في الواقع إلى Google Workspace. جوجل لم تفوّضك أبدًا. لقد فحصت للتو بنية طرف ثالث. هذا غير قانوني. صفِّ النطاقات الفرعية وتحقّق من ملكية DNS قبل أي فحص.
تعريف — ترميز CIDR، تلك الشرطة المائلة التي تتبع عنوان IP
عنوان IPv4 مثل 203.0.113.42 يشير إلى جهاز واحد. أما النطاق — مجموعة من العناوين المتجاورة — فيُكتب بترميز CIDR، نسبة إلى مواصفة Classless Inter-Domain Routing المنشورة سنة 1993. الصيغة هي الشبكة/البادئة: 203.0.113.0/28.
الرقم بعد الشرطة المائلة يشير إلى عدد البتّات، من اليسار، التي تنتمي إلى جزء الشبكة المشترك؛ أما البتّات المتبقية فتشكّل جزء المضيف المتغير. في /28، ثمانية وعشرون بتًا ثابتة، وأربعة بتّات متغيرة — وهذا يعطي ستة عشر عنوانًا إجمالًا، منها اثنان غير قابلين للاستخدام كمضيفَين (عنوان الشبكة وعنوان البث). في /24، أربعة وعشرون بتًا ثابتة، وثمانية متغيرة — مئتان وستة وخمسون عنوانًا، وغالبًا ما يسمّيها إداريو المدرسة القديمة "فئة C". في /16، ستة عشر بتًا متغيرة — خمسة وستون ألفًا وخمسمئة وستة وثلاثون عنوانًا، وهو الحجم الكلاسيكي لشبكة شركة متوسطة.
بالنسبة إلى مختبِر الاختراق، ترميز CIDR ضروري في RoE لتفادي خطأين: إدراج عشرين عنوانًا يدويًا بينما /28 يذكر النطاق كله دفعة واحدة، والخلط بين /24 و/32. النطاق /32 لا يشير إلا إلى عنوان واحد — وهو المكافئ بترميز CIDR لعنوان IP منفرد. تحقّق دائمًا من البادئة قبل إطلاق أي فحص: nmap -sS 203.0.113.0/24 يفحص مئتين وستة وخمسين مضيفًا، بينما nmap -sS 203.0.113.0/16 يفحص خمسة وستين ألفًا، وإذا كان RoE لديك لا يغطي سوى الـ/24 الأولى، فأنت قد تجاوزت النطاق للتو.
3.2. التقنيات المسموح بها والممنوعة
نُدرج ما يمكننا فعله، وما لا يمكننا فعله. أمثلة على أقسام كلاسيكية:
| التقنية | مسموح؟ | ملاحظة |
|---|---|---|
| فحص منافذ نشط | نعم | خارج ساعات العمل. |
| استغلال الثغرات المكتشَفة | نعم | دون الكتابة في قواعد بيانات الإنتاج. |
| تصعيد الصلاحيات | نعم | عدم إنشاء حساب دائم. |
| هندسة اجتماعية عبر البريد الإلكتروني (phishing) | نعم | على قائمة موظفين مزوَّدة، وبحد أقصى 3 موجات. |
| هندسة اجتماعية هاتفية (vishing) | لا | — |
| هجوم حجب الخدمة | لا | أبدًا في الإنتاج. |
| اختبار فيزيائي (اقتحام المكاتب) | لا | مُخطَّط له لمرحلة ثانية. |
| هجمات على المصادقة | نعم | حد أقصى 3 محاولات لكل حساب لتفادي الإقفال. |
كل "لا" قد تنقذ عميلك من حادثة. وكل "نعم" غير مؤطَّر جيدًا قد تسبب لك واحدة.
3.3. النوافذ الزمنية للتدخل
أبدًا "خلال النهار". دائمًا توقيتات دقيقة، مع المنطقة الزمنية:
- فحص صاخب: السبت 15 مارس 22:00 ← الأحد 16 مارس 06:00 (UTC-05:00)
- الاستغلال: أسبوع 17 مارس، 09:00 ← 18:00 (UTC-05:00)
- التصيّد: الأربعاء 19 مارس، الإرسال بين 09:00 و11:00 (UTC-05:00)
فحص يتجاوز ساعات العمل بساعة واحدة ويُسقِط خادمًا، هذا أمر يمكن الدفاع عنه. أما فحص يتجاوز الحد ولم يكن ضمن النافذة المصرَّح بها، فهذا يُدفَع ثمنه.
3.4. جهات اتصال التصعيد
ثلاثة أشخاص، كحد أدنى، في RoE:
- جهة الاتصال التشغيلية لدى العميل. تجيب على الأسئلة التقنية، ويمكن الوصول إليها من 9 إلى 17.
- جهة اتصال التصعيد الطارئ. متاحة على مدار الساعة خلال نافذة الاختبار. رقم هاتف محمول شخصي، لا مقسم مركزي.
- رئيس مهمتك لدى مقدّم الخدمة.
أرقام. بريد إلكتروني. يحدد RoE بالضبط من يُتَّصَل به عندما يسوء شيء ما.
3.5. التعامل مع الاكتشافات الحرجة
"إن وجدت ثغرة حرجة أثناء الاختبار، ماذا تفعل؟"
الإجابة النموذجية:
- ثغرة حرجة قابلة للاستغلال في الإنتاج: إيقاف فوري للاستغلال، إشعار جهة اتصال التصعيد خلال ساعتين، ومواصلة الاختبار على محاور أخرى.
- دلائل على اختراق سابق موجود مسبقًا (تعرَّض العميل للاختراق فعلًا): توقف كامل، إشعار خلال ساعة، والحفاظ على المؤشرات. هذه حالة استجابة، وليست اختبار اختراق.
- تسرّب بيانات شخصية مكتشَف: إشعار فوري، وفق أحكام RGPD / Loi 25 المتعلقة بالإخطار للسلطة المختصة.
تُكتَب هذه الحالات مسبقًا. اليوم الذي تقع فيه، لن يكون رأسك متفرغًا للتفاوض.
تعريف — الاستجابة للحوادث، ما لا يحق لمختبِر الاختراق ارتجاله
الاستجابة للحوادث، أو DFIR اختصارًا لـDigital Forensics and Incident Response، مهنة مختلفة عن اختبار الاختراق، بقواعد معاكسة. مختبِر الاختراق يسعى إلى عدم ترك أثر، بينما مستجيب الحوادث يسعى إلى الحفاظ على كل أثر. يمكن لمختبِر الاختراق أن يعيد تشغيل استغلال مرتين أو ثلاثًا للتحقق، أما مستجيب الحوادث فعليه تجميد حالة النظام عند أول وصول، لأن كل أمر ينفّذه يمحو الذاكرة الحية ويعدّل الطوابع الزمنية للقرص.
إذا اكتشفت أثناء اختبار الاختراق مؤشرات على اختراق سابق — ملف svchost.exe في مجلد مستخدم، مهمة مجدولة تُرسل ping كل ساعة إلى نطاق .onion، عملية تستمع على منفذ غير معلَن — فالقاعدة بسيطة. توقف عن كل شيء. لا تلمس شيئًا: لا الملف، ولا العملية، ولا السجلات. اتصل بجهة اتصال التصعيد خلال الساعة. وثِّق ما رأيته، بالوقت الدقيق، دون أن تكون قد عدّلت بياناته الوصفية.
سيُطلق العميل عندها فريق DFIR — فريقه الخاص أو خارجي. سيتولى هذا الفريق الملف بأدواته الخاصة: أخذ صورة للقرص، التقاط الذاكرة، الحفاظ على الآثار. دورك يتوقف عند الإشعار. أي استكشاف إضافي من جانبك يدمّر أدلة كانت لتساعد على تحديد المهاجم، وقياس الأثر الحقيقي، وربما الملاحقة القضائية.
3.6. إدارة الأدلة
أين تخزّن اللقطات والسجلات وhashes التي جمعتها؟
- تشفير الأدلة: LUKS، VeraCrypt، قرص منفصل.
- التسمية:
YYYY-MM-DD_client_<cible>_<action>.ext. - مدة الاحتفاظ: 30 أو 60 أو 90 يومًا بعد تسليم التقرير، ثم إتلاف موثَّق.
- الإرجاع إلى العميل إن طُلب، عبر قناة مشفَّرة (Signal، Wire، أو تسليم مادي لمفتاح USB مشفَّر).
مختبِر اختراق يترك hashdump على مكتبه غير مشفَّر هو مختبِر لن يُستدعى مجددًا.
3.7. الجوانب القانونية والتنظيمية
بحسب الولاية القضائية:
- كندا / كيبيك — Loi 25. يجب توثيق كل بيانات شخصية تطالها عملية اختبار الاختراق. يجب أن يكون لدى العميل اتفاقية معالجة تشمل مقدّم خدمة اختبار الاختراق.
- الاتحاد الأوروبي — RGPD. الأمر نفسه، المادة 28. مقدّم الخدمة هو معالج فرعي، مع DPA (Data Processing Agreement).
- الولايات المتحدة — CFAA. Computer Fraud and Abuse Act. واسعة جدًا. يجب أن يذكر RoE عبارة "authorized access" حرفيًا.
- بيئات PCI-DSS. تتطلب اختبار اختراق سنوي. قيود صارمة على من يمكنه إجراؤه (تأهيل ASV، PA-QSA).
- بيئات الرعاية الصحية — HIPAA (الولايات المتحدة)، RSS (كندا). قيود إضافية على التسجيل.
إذا كان عميلك على SaaS (AWS، Azure، GCP)، تحقّق من سياسة المزوّد. لم تعد AWS تشترط إشعارًا مسبقًا لمعظم الاختبارات منذ 2019؛ أما Azure فما زالت تشترط إقرارًا؛ وGCP تطلب موافقة. راجع الوثائق المحدَّثة وقت المهمة، لا هذا الدرس.
تعريف — DPA، هذا العقد الذي يرافق كل بيانات شخصية
DPA — Data Processing Agreement، اتفاقية المعالجة — هو العقد الذي ينظّم العلاقة بين مسؤول المعالجة (العميل، الذي يقرر لماذا وكيف تُعالَج البيانات الشخصية) والمعالج الفرعي (أنت، مختبِر الاختراق، الذي يعالج هذه البيانات لحساب المسؤول). يفرضه RGPD الأوروبي في مادته 28؛ وتشترطه Loi 25 الكيبيكية منذ 2023؛ ولدى ولايات قضائية أخرى معادلات لها.
يحدد DPA التزامات دنيا تخصّك مباشرة منها ثلاثة. يحدد الغرض — اختبار اختراق، لا إعادة بيع البيانات ولا تدريب نموذج. ويحدد المدة — وقت المهمة زائد فترة الاحتفاظ بالأدلة. ويحدد تدابير الأمان التي يجب أن تطبّقها على البيانات: تشفير اللقطات، إتلاف موثَّق بعد تسليم التقرير، نقل عبر قناة مشفَّرة فقط.
نقطتان عمليتان. لا توقّع DPA جديدًا لكل مهمة: لدى مقدّمي الخدمة الجادّين نموذج DPA يقبله العميل كما هو، أو بتعديلات طفيفة. وإذا أسندت كل العمل أو جزءًا منه إلى معالج فرعي من جانبك — مستقل يساعدك لأسبوع، خدمة سحابية لاستضافة أدلتك — فعليك بدورك أن توقّع DPA معه. ينتقل العقد في سلسلة، من العميل إلى آخر حلقة تلمس البيانات.
3.8. التسليمات والمواعيد النهائية
ما تسلّمه، ومتى:
- تقرير تنفيذي (2-3 صفحات).
- تقرير تقني كامل (30-80 صفحة).
- ملفات الأدلة.
- جلسة استعراض شفهي.
لكل تسليمة تاريخ، وصيغة، ومستلم.
4. الحالة الخاصة التي تجعل العميل معرَّضًا: التعاقد من الباطن
يوظفك العميل لاختبار اختراق نظام تخطيط موارده المؤسسية (ERP). هذا النظام يعمل على VPS مُستضاف لدى OVH. هل يحق لك مهاجمة الـ VPS؟
الأمر يتوقف على العقد بين العميل وOVH. بعض مزوّدي الاستضافة يمنعون اختبارات الاختراق دون إشعار مسبق. وبعضهم يسمح بها دون طلب. على العميل التحقق من ذلك — لكن أنت من ستُقطَع عنك الاتصال ومن سيتلقى بريد شكوى إساءة استخدام إذا لم يقم أحد بهذا العمل.
أضِف في RoE بندًا نموذجيًا:
"يضمن العميل أنه يملك الحقوق اللازمة للتفويض بالاختبارات الموصوفة، بما في ذلك لدى مزوّدي الاستضافة والخدمات المُدارة الخاصين به. أي شكوى أو حظر من طرف ثالث تقع مسؤوليته على عاتق العميل."
هذه الجملة غطاء وقائي. لن تكفي إن كان العميل يكذب عليك عن علم، لكنها تضعك في الجانب الصحيح من القصة.
5. العلامات التحذيرية التي يجب رصدها قبل التوقيع
ارفض المهمة، أو أعد التفاوض عليها، إن رأيت:
- عميلًا لا يريد تقديم جهة اتصال تصعيد على مدار الساعة. إنه لا يأخذ المهمة على محمل الجد.
- RoE يقدّمه العميل أقصر من صفحة واحدة. إنه يعتقد أن RoE مجرد شكليات. ستدفع الثمن.
- طلبًا صريحًا لاختبار أنظمة تعود لطرف ثالث. هذا أمر يجب أن يسوّيه العميل، لا أنت.
- عميلًا يصرّ على أن "تحاول الدخول بالمفاجأة، دون إعلام أحد". هذا red team — وله إطاره الخاص، الأثقل، وليس إطار اختبار اختراق.
- مهمة قصيرة جدًا (يومان) على هدف واسع جدًا (نطاق كامل). لن يتوفر لك الوقت لعمل مفيد؛ سيشتكي العميل من التقرير؛ ولن يربح أحد.
تعريف — انزياح النطاق، العدوّ الخفي لاختبار اختراق جيد التأطير
Scope creep، حرفيًا "انزياح النطاق"، يشير إلى التوسّع التدريجي للمهمة إلى ما وراء ما تم توقيعه. نادرًا ما يأخذ شكل قرار صريح؛ بل يتقدّم عبر طلبات صغيرة يبدو كل واحد منها بريئًا.
يتكشّف السيناريو النموذجي على أربع مراحل. يطلب منك العميل، في اليوم الثاني، إن كنت "طالما أنك هنا" يمكنك أيضًا إلقاء نظرة على الخادم X، غير الموجود في RoE. توافق بدافع اللطف. في اليوم الثالث، يُضاف خادم آخر. في اليوم الخامس، أنت خارج النطاق منذ وقت طويل، وجدولك ينفجر، وأدلتك تختلط، وإذا وقعت حادثة على أحد هذه الخوادم المضافة، لا يستطيع أحد إثبات أنه كان مصرَّحًا به. تدفع الثمن على ثلاثة مستويات: الوقت، الجودة، والمسؤولية القانونية.
الحل إجرائي. كل طلب خارج RoE يتلقى الرد المكتوب نفسه: "شكرًا على الطلب. يمكنني تغطية هذا الهدف ضمن ملحق مكتوب لـRoE، موقَّع مقابلًا من قِبل [جهة الاتصال التعاقدية]. التقدير: X أيام إضافية." إما يضيف العميل الهدف رسميًا، أو يتراجع. لا ملحق شفهي، ولا ملحق عبر بريد إلكتروني غير موقّع، ولا "سنرى لاحقًا". هذه الصرامة قد تصدم في البداية، لكنها تحمي دائمًا في النهاية.
6. الأخطاء الشائعة المكلفة
- نطاق موصوف شفهيًا، لم يُدوَّن أبدًا. يوم النزاع، لن يكون لديك شيء.
- لا إجراء لحالة اختراق سابق موجود مسبقًا. تدخل بنية تحتية مخترَقة أصلًا، لا تعرف ماذا تفعل، وتدمّر دون قصد أدلة كانت ستفيد التحقيق.
- لا هامش في النوافذ الزمنية. فحص
nmap -p-قد يستغرق 4 ساعات على نطاق من 256 عنوان IP. توقّع 1.5× تقديرك. - حسابات اختبار أُنشئت داخل حساب المدير الإداري للعميل، دون كلمة مرور قوية. وفي نهاية المهمة، ينسون حذفها.
- استخدام أدوات تتصل بمزوّدها. بعض الأدوات التجارية تنقل النتائج إلى سحابتها الخاصة. قد لا يكون RoE قد توقّع هذا التسريب. اضبط كل شيء محليًا.
7. ما يجب تذكّره
- RoE ليس مجرد ورقة إضافية. إنه الوثيقة الوحيدة التي تجعل عملك قانونيًا.
- NDA، SOW، RoE، التفويض، العقد الإطاري: خمس قطع، خمسة أدوار. لا تخلط بينها.
- النطاق هو قائمة، وليس جملة.
- تُكتَب النوافذ الزمنية وجهات الاتصال بدقة الدقيقة والرقم.
- حالة "اختراق سابق موجود مسبقًا" وحالة "اكتشاف حرج" يُستَبَقان مسبقًا.
- لا يستطيع العميل أن يفوّضك بمهاجمة إلا ما يملكه هو.
الدرس القادم: نأخذ سيناريو حقيقيًا (مؤسسة تجارة إلكترونية صغيرة)، نصوغ RoE كاملًا، ونعرضه للمراجعة.