يعود مديرك من مؤتمر أمني، ويقول لك في أول اجتماع: «نحتاج SOC». وأنت مسؤول التقنية في شركة فيها مئة وعشرون موظفاً وخمسة عشر سيرفراً ومتجر إلكتروني يعمل كل ساعات اليوم، وعندك Wazuh يرسل تنبيهات إلى بريد لا يقرؤه أحد بانتظام. وكلمة SOC في رأس المدير صورة غرفة مظلمة فيها شاشات كبيرة وخرائط تومض، وفي رأسك سؤال آخر تماماً: هل يعني ذلك ستة موظفين جدد؟ أم عقداً مع شركة؟ أم أن ما عندنا الآن يكفي إذا رتبناه؟
والإجابة تبدأ من أن مركز العمليات الأمنية SOC (Security Operations Center) ليس غرفة ولا أداة، وإنما وظيفة: أن يرى أحد ما يحدث في أنظمتك، ويقرر في وقت معقول أي ذلك يستحق أن يتحرك له، ثم يتحرك. ويمكن أن تؤدي هذه الوظيفة غرفة فيها عشرون محللاً، أو شخصان في ساعات العمل ومورد في الليل، أو حتى مسؤول واحد لديه قواعد قليلة جيدة ومناوبة واضحة. وفي هذا المقال سوف نفكك المركز إلى أجزائه، ونحسب بالأرقام ما يعنيه أن تراقب كل ساعات السنة، ثم نرى كيف تختار الشكل الذي يناسب شركتك، وماذا تقول الضوابط الأساسية للأمن السيبراني عنه.
وقد عرفنا المصطلحات الأساسية مثل SIEM وEDR والحدث Event والتنبيه Alert في مصطلحات الأمن للمبتدئين، وشرحنا الأدوار الوظيفية في أدوار الأمن السيبراني، وهذا المقال لا يعيدها، وإنما يجمعها في صورة واحدة: كيف يعمل المركز كاملاً.
دليلمصطلحات الأمن السيبراني للمبتدئين: من CVE إلى Purple Teamماذا تعني الكلمات التي تتكرر في كل عرض أمني، من رقم الثغرة وخطورتها إلى أدوات المراقبة SOC والفرق الحمراء والزرقاء.
دليلأدوار الأمن السيبراني Careers: ماذا يعمل كل دور، ومن أين تبدأ؟تسعة أدوار في الأمن السيبراني من المراجع الرسمية: اليوم العادي والمهارات والأدوات، ومن أي مستوى يبدأ كل دور.
دليليوم محلل SOC: فرز التنبيهات Alert Triage من التنبيه إلى القرارستة عشر تنبيهاً حقيقياً من Wazuh وSuricata نفرزها واحداً واحداً بالإثراء من Zeek حتى القرار والتصعيد.وسوف نناقش في هذا المقال ما يلي:
- من أين جاءت فكرة المركز، ولماذا ظهرت فرق الاستجابة قبل غرف المراقبة.
- الدائرة التي يعمل بها أي مركز: الجمع، والكشف، والفرز، والاستجابة، والتحسين.
- من يعمل فيه: المستويات Tiers والأدوار حولها، ومتى يكفي شخصان.
- مشكلة النوبات Shifts بالأرقام: سكربت يحسب كم محللاً يحتاج المقعد الواحد بحدود نظام العمل في المملكة.
- نماذج التشغيل: الداخلي والمدار MSSP والكشف والاستجابة المدارة MDR والهجين، والضابط الذي يحدد مكان المورد.
- حالات الاستخدام Use Cases التي يبدأ بها المركز، وما الذي تؤتمته وما الذي تتركه للإنسان.
- المقاييس التي تستحق القياس، والتي تفسد الفريق إذا قستها.
- أين تذهب تكلفة المركز فعلاً.
- كيف تعرف أن المركز يعمل فعلاً، وماذا حدث عندما اختبرت CISA مركز جهة ناضجة.
- مسار من أربع مراحل لشركة صغيرة، وأخطاء شائعة، وجدول قرار.
من أين جاءت فكرة المركز؟
في نوفمبر 1988 انتشرت دودة Morris على الإنترنت، وكانت يومها شبكة جامعات ومراكز بحث، فعطلت أجزاء كبيرة منها. وكما يروي تاريخ منظمة FIRST فإن رد الفعل كان متفرقاً وغير منسق، فكل فريق يحلل الدودة وحده، ويصل إلى حلول تتعارض مع حلول غيره. وبعد أسابيع أنشئ مركز تنسيق CERT في جامعة كارنيجي ميلون، ثم توالت فرق الاستجابة للحوادث، وفي 1990 اجتمعت في منظمة FIRST لتتواصل وتتبادل المعلومات. أي أن أول ما ظهر هو فرق الاستجابة CSIRT (Computer Security Incident Response Team) التي تتحرك عندما يقع الحادث، لا غرف المراقبة التي تبحث عنه قبل أن يكبر.
أما فكرة المراقبة المستمرة فجاءت من عالم آخر، من مراكز عمليات الشبكة NOC (Network Operations Center) التي تراقب توافر الشبكات والسيرفرات على مدار الساعة. فعندما أصبح لكل جهاز حماية سجلاته وتنبيهاته، من الجدار الناري Firewall إلى نظام كشف التسلل IDS، ظهرت الحاجة إلى مكان واحد يجمعها، ومنها جاءت أنظمة SIEM (Security Information and Event Management) في العقد الأول من هذا القرن، ومعها الغرف المخصصة لمن يقرأ ما تجمعه. ثم جاءت المرحلة الثالثة عندما أصبح الكشف داخل الجهاز نفسه ممكناً بأدوات EDR، وظهرت شركات تبيع الوظيفة كلها خدمة، وهو ما يسمى اليوم الكشف والاستجابة المدارة MDR.
وهذا التاريخ يفسر شيئاً تراه في كل مركز اليوم: نصفه مراقبة جاءت من ثقافة NOC، أي شاشات وتنبيهات ومستويات خدمة، ونصفه استجابة جاءت من ثقافة CSIRT، أي تحقيق وأدلة وقرارات. والمركز الذي يعمل جيداً هو الذي يجمع الثقافتين، والمركز الذي يفشل غالباً أخذ واحدة ونسي الأخرى: إما شاشات جميلة لا يقرر أحد أمامها شيئاً، وإما فريق تحقيق ممتاز لا يعرف بالحادث إلا بعد أسابيع.
وفي لغة الأطر الحديثة تجد الوظيفة نفسها في دالة الكشف Detect في إطار NIST للأمن السيبراني CSF 2.0، وفيها فئتان: المراقبة المستمرة DE.CM للشبكات والأجهزة ونشاط الأشخاص ونشاط مزودي الخدمات، وتحليل الأحداث الضارة DE.AE الذي ينتهي بإعلان الحادثة عندما تتحقق شروطها المعرفة مسبقاً. ولاحظ أن الإطار لا يذكر غرفة ولا عدد محللين، وإنما نتائج مطلوبة، وهذا ما يجعل الوظيفة ممكنة لشركة صغيرة.

كيف يعمل المركز؟ دائرة من خمس خطوات
كل مركز، مهما كان حجمه، يعمل بنفس الدائرة، والصورة التالية تبينها مع الأدوات مفتوحة المصدر التي جربناها في هذا المسار لكل خطوة:

الجمع Collect: لا تكشف ما لا تراه
أول خطوة أن تصل السجلات Logs إلى مكان واحد، بوقت موحد، وبمدة احتفاظ Retention كافية. والسؤال هنا ليس «كم سجلاً نجمع؟» وإنما «ما الذي نحتاج أن نراه؟»: من دخل إلى أي حساب ومن أين، ومن غير صلاحية مستخدم، وأي عملية Process بدأت على السيرفر، وأي اتصال خرج إلى الإنترنت. والخطأ الذي يقع فيه أغلب من يبدأ أن يجمع كل شيء من الأدوات السهلة، فيمتلئ القرص بسجلات الوصول إلى الصفحات، ويغيب سجل المصادقة Authentication في نظام الهوية لأن ربطه أصعب. وقد خصصنا لهذه الخطوة مقالاً كاملاً عن السجلات الأمنية، أي ماذا تجمع ومن أين، لأنها أساس كل ما بعدها.
الكشف Detect: من سطر إلى تنبيه
القواعد Rules هي ما يحول السطر إلى تنبيه، وهي ثلاثة أنواع. الأول توقيع Signature لشيء معروف، مثل نمط حقن SQL في رابط، وهو دقيق ولكنه لا يرى الجديد. والثاني سلوك Behavior، مثل خمس محاولات دخول فاشلة ثم واحدة ناجحة من نفس العنوان، وهو يرى أساليب لم يكتب لها توقيع. والثالث شذوذ Anomaly، مثل حساب يرسل في ساعة ما يرسله عادة في شهر، وهو أقوى الأنواع نظرياً وأكثرها إنذارات خاطئة عملياً. وقد شرحنا كيف يعمل محرك الكشف من الداخل في محرك كشف SIEM من الداخل، وجربنا قواعد Wazuh في مقال Wazuh وقواعد الشبكة في مقال Suricata وZeek.
ومن يكتب هذه القواعد؟ في الأدوات الجاهزة يكتبها المورد، وهي نقطة بداية جيدة، ولكنها لا تعرف تطبيقك ولا حساباتك المهمة. لذلك ظهر في المراكز الناضجة دور كامل اسمه هندسة الكشف Detection Engineering، يعامل القواعد ككود: تكتب وتراجع وتختبر على بيانات محفوظة قبل أن تصل إلى الإنتاج، ولها سجل تغييرات.
الفرز Triage: الإنسان الذي يقرر
هنا يقرأ المحلل التنبيه ويثريه بالسياق ويقرر: إنذار خاطئ، أو صحيح متوقع مثل فحص مصرح به، أو حادثة تحتاج تحركاً. وقد مشينا هذه الخطوة تنبيهاً تنبيهاً على ستة عشر تنبيهاً حقيقياً في يوم محلل SOC، فلا نعيدها هنا. ويكفي أن تتذكر نتيجة واحدة من ذلك المقال: ترتيب الطابور بخطورة القاعدة وحدها جعل اثني عشر تنبيهاً من ستة عشر في الأولوية الأولى، أي أن الأداة وحدها لا ترتب العمل.
الاستجابة Respond: من تنبيه إلى قضية
عندما يقرر المحلل أن التنبيه حادثة يفتح قضية Case فيها التنبيهات والأدلة وما فعله وما لم يعرفه، ويبدأ المستجيب العمل بحسب خطة الاستجابة Incident Response Plan وكتيبات التشغيل Playbooks. وهذه الخطوة هي التي تفرق بين مركز يكتشف ومركز يحمي، فالكشف دون صلاحية للتحرك يعني أنك تعرف بالمشكلة وتنتظر من يملك القرار. لذلك يجب أن تحدد خطة الاستجابة مسبقاً من يستطيع أن يعزل سيرفراً أو يعطل حساباً، ومتى يحتاج موافقة، كما شرحنا في خطة الاستجابة للحوادث.
التحسين Improve: الخطوة التي ينساها الجميع
كل إنذار خاطئ هو قاعدة تحتاج ضبطاً، وكل حادثة عرفت بها من مكان آخر، من عميل أو من مورد أو من خبر، هي قاعدة لم تكتب أو سجل لم يجمع. والمركز الذي لا يحول هذه الملاحظات إلى تغييرات يبقى في نفس المكان، ويتعب محللوه من نفس الإنذارات كل يوم حتى يتركوا العمل أو يتوقفوا عن القراءة بانتباه، وهو ما يسمى إرهاق التنبيهات Alert Fatigue. لذلك فإن أهم اجتماع في الأسبوع ليس اجتماع الحوادث، وإنما اجتماع الضبط Tuning القصير الذي يراجع أكثر القواعد ضجيجاً وأي فجوة ظهرت.
من يعمل في المركز؟
التقسيم الشائع في المراكز الكبيرة ثلاثة مستويات، والصورة التالية تبينها مع الأدوار التي تحيط بها:

- المستوى الأول L1: يفرز الطابور، ويغلق ما يعرف أنه خاطئ بسبب مكتوب، ويصعد ما يحتاج تحقيقاً. وهو أكثر المستويات عدداً، وأكثرها عرضة للإرهاق.
- المستوى الثاني L2: يأخذ ما صعد إليه، ويجمع الأدلة من أكثر من مصدر، ويحدد نطاق الحادثة، ويبدأ الاحتواء بحسب الخطة.
- المستوى الثالث L3: يبحث عن المهاجم الذي لم تطلق عليه أي قاعدة، وهو ما يسمى صيد التهديدات Threat Hunting، ويقود الحوادث الكبيرة، ويحول ما يجده إلى قواعد.
وهذا التقسيم له نقد معروف داخل المهنة: أنه يجعل المستوى الأول يعمل كخط إنتاج يغلق التنبيهات دون أن يتعلم، وأن المعرفة لا تعود من المستوى الثالث إلى الأول. لذلك تميل فرق كثيرة اليوم إلى أن يملك المحلل التنبيه من الفرز حتى الإغلاق ما لم يتجاوز حداً متفقاً عليه، وأن يقضي كل محلل جزءاً من أسبوعه في الضبط أو الصيد. وفي شركة صغيرة لا يوجد هذا السؤال أصلاً، فالشخص نفسه يفرز ويحقق ويكتب القاعدة، والمهم عندها أن تكون الأدوار مكتوبة ولو كان الاسم واحداً: من يفرز اليوم، ومن يقرر عزل سيرفر، ومن يوافق على تعديل قاعدة.
ولا تنس الأدوار التي حول المستويات، فهي التي تبقي المركز يعمل: مهندس الكشف الذي يكتب القواعد ويختبرها، ومحلل الاستخبارات Threat Intelligence الذي يحول تقارير التهديد إلى قواعد وأسئلة صيد كما في مقال MISP وOpenCTI، ومهندس المنصة الذي يكتشف أن مصدراً توقف عن الإرسال منذ ثلاثة أيام قبل أن يكتشفه المهاجم، ومدير المركز الذي يرتب النوبات ويقيس ويتكلم مع الإدارة والموردين.

مشكلة النوبات Shifts بالأرقام
عندما يقول المدير «نريد مراقبة 24/7» فهو يتكلم عن عدد ساعات، والساعات تتحول إلى أشخاص بحساب بسيط ينساه كثيرون: السنة فيها 8760 ساعة، والمحلل الواحد لا يعمل منها إلا جزءاً صغيراً بعد الإجازات والأعياد والتدريب. ونظام العمل في المملكة يحدد حدين لهذا الحساب، فالمادة الثامنة والتسعون من نظام العمل تمنع تشغيل العامل أكثر من ثماني ساعات في اليوم أو ثمان وأربعين ساعة في الأسبوع، وتخفضها في رمضان للمسلمين إلى ست ساعات في اليوم أو ست وثلاثين في الأسبوع، والمادة التاسعة بعد المائة تعطيه إجازة سنوية لا تقل عن واحد وعشرين يوماً، تزيد إلى ثلاثين بعد خمس سنوات متصلة.
تجربة صغيرة: كم محللاً يحتاج المقعد الواحد؟
كتبنا سكربتاً يحسب الساعات المتاحة من المحلل الواحد في السنة، ثم يقسم عليها ساعات التغطية المطلوبة لأربعة أنماط شائعة. والقيم التي يحددها النظام مكتوبة بمادتها، والقيم التي تختارها الشركة، أي الأعياد والتدريب والمرض، معلمة بأنها افتراض لتعدلها بحسب شركتك وتقويم السنة:
"""How many analysts does one SOC seat need? Hours available per analyst per year under the Saudi Labor Law
limits (Art. 98: 8 h/day or 48 h/week, 6 h/day or 36 h/week in Ramadan; Art. 109: at least 21 days annual leave),
against the hours a seat must be covered. Values marked ASSUMPTION are company choices: change them."""
import math, sys
WEEKLY = float(sys.argv[1]) if len(sys.argv) > 1 else 40 # contract hours per week (law allows up to 48)
DAYS_PER_WEEK = 5
LEAVE = 21 # Art. 109 minimum (30 after five years of service)
HOLIDAYS = 10 # ASSUMPTION: Eid and national holidays set by the executive regulations; check the year's calendar
TRAINING_SICK = 10 # ASSUMPTION: training, certifications and sick days per year
RAMADAN_WEEKS = 4 # about one lunar month
RAMADAN_WEEKLY = min(WEEKLY, 36) # Art. 98 cap during Ramadan
daily = WEEKLY / DAYS_PER_WEEK
paid = (52 - RAMADAN_WEEKS) * WEEKLY + RAMADAN_WEEKS * RAMADAN_WEEKLY
absent = (LEAVE + HOLIDAYS + TRAINING_SICK) * daily
available = paid - absent
print(f"contract {WEEKLY:.0f} h/week: paid {paid:.0f} h/year, absent {absent:.0f} h, available {available:.0f} h per analyst")
coverage = {"24x7 (every hour of the year)": 24 * 365,
"16x7 (06:00-22:00, nights on call)": 16 * 365,
"12x5 (07:00-19:00, Sunday-Thursday)": 12 * 5 * 52,
"8x5 (business hours only)": 8 * 5 * 52}
for name, hours in coverage.items():
need = hours / available
print(f" {name:38} {hours:5} h/year -> {need:4.2f} analysts per seat, hire {math.ceil(need)}")docker run --rm -v "$(pwd -W):/w" -w /w python:3.13.17-slim python staffing.py 40
docker run --rm -v "$(pwd -W):/w" -w /w python:3.13.17-slim python staffing.py 48والمخرج سوف يكون كما يلي:
contract 40 h/week: paid 2064 h/year, absent 328 h, available 1736 h per analyst
24x7 (every hour of the year) 8760 h/year -> 5.05 analysts per seat, hire 6
16x7 (06:00-22:00, nights on call) 5840 h/year -> 3.36 analysts per seat, hire 4
12x5 (07:00-19:00, Sunday-Thursday) 3120 h/year -> 1.80 analysts per seat, hire 2
8x5 (business hours only) 2080 h/year -> 1.20 analysts per seat, hire 2
contract 48 h/week: paid 2448 h/year, absent 394 h, available 2054 h per analyst
24x7 (every hour of the year) 8760 h/year -> 4.26 analysts per seat, hire 5
16x7 (06:00-22:00, nights on call) 5840 h/year -> 2.84 analysts per seat, hire 3
12x5 (07:00-19:00, Sunday-Thursday) 3120 h/year -> 1.52 analysts per seat, hire 2
8x5 (business hours only) 2080 h/year -> 1.01 analysts per seat, hire 2في المخرج أعلاه لاحظ التالي:
- المحلل بعقد 40 ساعة في الأسبوع يعطي 1736 ساعة عمل فعلي في السنة، أي أقل من خمس ساعات السنة، فتغطية مقعد واحد كل الساعات تحتاج 5.05 محلل، أي ستة في التوظيف الفعلي، لأن نصف محلل لا يوجد.
- حتى بالحد الأعلى الذي يسمح به النظام، 48 ساعة، تحتاج خمسة محللين لمقعد واحد، ونحن هنا لا نحسب استقالة أحدهم، ولا الأسابيع التي يتعلم فيها البديل.
- ساعات العمل فقط، أي ثماني ساعات خمسة أيام، تحتاج 1.20 محلل، أي اثنين. وهذا ما يفاجئ أغلب المدراء: محلل واحد لا يغطي حتى ساعات العمل، لأن إجازته وتدريبه ومرضه ساعات بلا أحد يقرأ.
- والفرق بين 16 ساعة يومياً مع مناوبة ليلية On-call و24 ساعة كاملة محللان، وهذا هو السبب الذي يجعل كثيراً من الشركات تختار المناوبة للأولوية الأولى فقط في الليل بدل مقعد كامل.
وقد يتساءل البعض: لماذا لا نجعل المحلل يعمل اثنتي عشرة ساعة في نوبات أطول، فيقل العدد؟ والإجابة أن المادة الأولى بعد المائة تمنع أن يعمل العامل أكثر من خمس ساعات متتالية دون فترة راحة، وأن الحدين اليومي والأسبوعي يبقيان، فالنوبات الطويلة تغير توزيع الساعات ولا تغير مجموعها. والأهم من القانون أن التعب يقلل جودة الفرز، والتنبيه الذي يقرؤه محلل في ساعته الحادية عشرة يقرأ بعين أقل انتباهاً، ومن هنا جاءت قاعدة المراكز الكبيرة أن النوبة الليلية لا تكون دائمة لنفس الشخص.

وهذا الحساب هو أهم رقم في أي نقاش عن المركز، لأنه يحول السؤال من «هل نحتاج SOC؟» إلى «ما الساعات التي نحتاج أن يقرأ فيها أحد التنبيهات، وكم ندفع لكل ساعة منها؟». فإذا كان متجرك يبيع في الليل، وأخطر ما يمكن أن يحدث هو سرقة بيانات بطاقات أو حسابات العملاء، فالليل ساعات مهمة، ولكن هذا لا يعني ستة موظفين، وإنما يعني أن تختار نموذجاً يغطي الليل بطريقة أخرى، وهذا موضوع القسم التالي.
المناوبة On-call: ماذا يفعل الشخص الواحد في الليل؟
إذا اخترت المناوبة بدل المقعد الليلي فاعرف ما الذي تشتريه: شخص نائم هاتفه بجانبه، لا محلل مستيقظ أمام الطابور. وهذا يعني ثلاثة شروط حتى تعمل. الأول أن القواعد التي توقظه قليلة جداً ودقيقة، أي الأولوية الأولى فقط، ونجاح لا محاولة، لأن ثلاث إنذارات خاطئة في أسبوع واحد تعلمه أن يتجاهل الهاتف. والثاني أن يكون عنده كتيب قصير لكل قاعدة من هذه القواعد يقول ماذا يفعل في الدقائق العشر الأولى: ماذا يفتح، وماذا يتحقق منه، ومتى يتصل بمن. والثالث أن تكون صلاحياته واضحة مسبقاً، فإذا قرر في الثالثة فجراً أن يعطل حساباً مسروقاً فلا يحتاج أن يوقظ المدير ليسأله.
والمناوبة لها حساب أيضاً، فالشخص الذي يناوب أسبوعاً كاملاً كل شهر يحتاج تعويضاً وراحة بعد ليلة استيقظ فيها، والجدول يجب أن يكتب قبل الشهر لا في يومه. وإذا لم يكن عندك إلا شخص واحد يعرف الأنظمة، فهذه ليست مناوبة، وإنما نقطة فشل واحدة Single Point of Failure، وأول ما تحتاجه شخص ثان يتعلم.
نماذج التشغيل: داخلي أم مدار أم هجين؟
بعد حساب الساعات يأتي سؤال من يغطيها، والصورة التالية تجمع النماذج الأربعة الشائعة:

- الداخلي In-house: الفريق والأدوات والبيانات عندك، والقرار أسرع لأن المحلل يعرف الأنظمة ويستطيع أن يسأل صاحبها. والثمن تكلفة ثابتة كبيرة، وصعوبة الاحتفاظ بالمحللين، والحساب الذي رأيناه أعلاه لكل ساعة تغطية.
- المدار MSSP (Managed Security Service Provider): مورد يجمع سجلاتك ويراقبها ويرسل لك التنبيهات المهمة. يبدأ بسرعة، ويغطي الليل بسعر أقل من ستة موظفين، ولكنه في الغالب يخبرك ولا يتحرك، فإذا وصلك تنبيه في الثالثة فجراً فمن عندك يقرؤه؟
- الكشف والاستجابة المدارة MDR (Managed Detection and Response): مورد يكشف ويحقق ويحتوي، كأن يعزل جهازاً أو يعطل حساباً، بصلاحيات تتفق عليها مسبقاً، وغالباً بأداته هو مثبتة على أجهزتك. أسرع في الاستجابة، وأعمق في الاعتماد على المورد.
- الهجين Hybrid: فريقك في ساعات العمل يملك القواعد والبيانات والقرار، والمورد يغطي الليل والإجازات بكتيبات تشغيل مكتوبة منك. وهو الأنسب لأغلب الشركات المتوسطة، لأنه يبقي المعرفة عندك ويشتري الساعات التي يصعب توظيفها.
وفي المملكة سؤال قبل كل هذه الأسئلة: أين يقع المورد؟ فالضابط 4-1-3-2 في وثيقة ECC-2:2024 يشترط أن تكون مراكز الخدمات المدارة للمراقبة والتشغيل التي تستخدم الوصول عن بعد موجودة بالكامل داخل المملكة، والضابط 4-1-3-1 يطلب تقييماً لمخاطر الأمن السيبراني قبل توقيع عقد خدمات الأمن المدارة. وهذه الضوابط ملزمة للجهات التي تنطبق عليها، وقد شرحنا أيها ينطبق عليك في ضوابط الهيئة: أيها ينطبق عليك. وحتى إن لم تكن ملزماً بها فهي قائمة أسئلة جيدة لأي عقد.
وقبل أن توقع مع أي مورد، اسأله أسئلة لا تجدها في العرض التسويقي:
- ما الذي يفعله في الليل بالضبط؟ هل يتصل بشخص عندك، أم يرسل بريداً، أم يعزل الجهاز؟ وكم دقيقة بين التنبيه والاتصال في عقد مستوى الخدمة SLA؟
- من يملك القواعد؟ إذا انتهى العقد، هل تبقى القواعد التي كتبها لبيئتك عندك؟
- من يملك السجلات وأين تخزن؟ وكم تبقى، وكيف تسترجعها عند التحقيق أو عند انتهاء العقد؟
- ما الذي لا يراه؟ فالمورد لا يكشف ما لا ترسله له، وإذا لم ترسل سجلات نظام الهوية فهو لا يرى سرقة الحسابات.
- كيف تقيسه؟ بالمقاييس التي في القسم التالي، لا بعدد التقارير الشهرية.
وهذه الأسئلة جزء من موضوع أكبر هو مخاطر الموردين Third-party Risk، وسوف نخصص له مقالاً في مرحلة الحوكمة من هذا المسار.
حالات الاستخدام Use Cases: بماذا يبدأ المركز؟
أكثر سؤال يتردد فيه من يبدأ: ما القواعد التي أكتبها أولاً؟ والإجابة ليست قائمة جاهزة من المورد، وإنما من سؤال معاكس: ما الذي لو حدث في شركتك اليوم ولم يعرف به أحد حتى الأسبوع القادم لكان كارثة؟ ومن الإجابة تخرج حالات الاستخدام Use Cases، وكل حالة لها أربعة أجزاء: السلوك الذي تبحث عنه، والأسلوب المقابل له في ATT&CK، ومصدر البيانات الذي يراه، ومن يستلم التنبيه. والجدول التالي مثال لعشر حالات تناسب أغلب الشركات الصغيرة، وكل واحدة منها رأيناها أو سنراها في مقالات هذا المسار:
| السلوك | ATT&CK | مصدر البيانات |
|---|---|---|
| دخول ناجح بعد محاولات فاشلة كثيرة | T1110 | سجلات SSH ونظام الهوية |
| دخول بحساب صحيح من مكان أو وقت غير معتاد | T1078 | نظام الهوية والشبكة الخاصة VPN |
| إنشاء حساب جديد أو ترقيته إلى مدير | T1136 وT1098 | نظام الهوية والتطبيق |
| مفتاح SSH جديد في حساب مميز | T1098.004 | مراقبة سلامة الملفات FIM |
| ملف تنفيذي أو PHP جديد في مجلد الموقع | T1505.003 | مراقبة سلامة الملفات FIM |
| مهمة مجدولة Cron جديدة على سيرفر | T1053 | FIM وسجلات النظام |
| مسح السجلات أو إيقاف وكيل المراقبة | T1070 وT1562 | السجلات نفسها، وقاعدة المصدر الصامت |
| اتصال خارج إلى عنوان في قائمة مؤشرات | T1071 | Zeek وSuricata وDNS |
| كمية بيانات خارجة غير معتادة | T1048 | سجلات الاتصالات في Zeek والجدار الناري |
| تسجيل دخول إداري عن بعد من جهاز غير مسجل | T1021 | سجلات الوصول عن بعد |
ولاحظ أن أغلب الحالات في الجدول عن الحسابات والتغيير، لا عن البرمجيات الخبيثة، والسبب أن أكثر الحوادث في الشركات الصغيرة تبدأ بحساب مسروق أو إعداد ضعيف، كما رأينا في تقرير CISA الذي سنذكره بعد قليل حين بدأ الفريق الأحمر برسائل تصيد. ولاحظ أيضاً أن لكل حالة مصدر بيانات، فإذا لم يكن المصدر مجمعاً فالقاعدة لا قيمة لها، وهذا ما يجعل التغطية تقاس بالحالة ومصدرها معاً لا بعدد القواعد. وفي المقال القادم عن قواعد الكشف بلغة Sigma سوف نكتب بعض هذه الحالات قواعد نختبرها على سجلات حقيقية.
الأتمتة SOAR: ماذا تؤتمت وماذا تترك للإنسان؟
منصات التنسيق والأتمتة والاستجابة SOAR (Security Orchestration, Automation and Response) وعدت المراكز بأن تحل مشكلة النوبات: دع الآلة تفرز وتستجيب، ويتفرغ الإنسان للصعب. والحقيقة في المنتصف، فبعض الأعمال تؤتمت بأمان، وبعضها خطير إذا أتمته.
- الإثراء Enrichment: آمن ومفيد دائماً، فإضافة صاحب السيرفر من ملف الأصول، وسمعة العنوان من قائمة مؤشرات، وتاريخ التنبيهات من نفس المصدر، يوفر على المحلل دقائق في كل تنبيه دون أن يقرر شيئاً بدلاً منه.
- التجميع Grouping: جمع التنبيهات المتقاربة على نفس الأصل في قضية واحدة، فيرى المحلل قصة واحدة بدل عشرة أسطر.
- الاحتواء المحدود: حظر عنوان يخمن كلمات المرور لمدة قصيرة، كما فعل الحظر التلقائي Active Response في مختبر Wazuh الذي حظر العنوان ثم رفع الحظر وحده بعد ثلاث دقائق. وهذا آمن لأنه مؤقت ومحدود بقاعدة دقيقة.
- الاحتواء الواسع: عزل سيرفر أو تعطيل حساب مدير، وهذا لا يؤتمت إلا بموافقة إنسان، والسبب أن الإنذار الخاطئ هنا يوقف خدمة حقيقية، وأن المهاجم الذي يعرف قاعدتك يستطيع أن يستخدمها ليعطل أنظمتك بنفسه.
والقاعدة العملية: أتمت ما يجمع المعلومات وما يمكن التراجع عنه في دقائق، واترك للإنسان ما يغير حالة الأنظمة بطريقة يصعب الرجوع عنها. وأتمت بعد أن تعمل الخطوة يدوياً بنفس الطريقة عشرين مرة، لا قبلها، لأن الأتمتة تكرر الخطأ بسرعة أكبر.
ماذا تقيس؟ وما الذي يفسد الفريق إذا قسته؟
بعد شهر من التشغيل سوف يسألك المدير: هل يعمل؟ والإجابة تحتاج مقاييس Metrics، وأهمها مقاييس الوقت، لأن كل دقيقة بين بداية الحدث والاحتواء هي دقيقة يعمل فيها المهاجم بحرية:

- زمن الكشف MTTD (Mean Time to Detect): من بداية الحدث إلى أول تنبيه. ولا تعرف بداية الحدث إلا بعد التحقيق، لذلك يقاس من الحوادث المغلقة، ويقول لك هل قواعدك ترى مبكراً أم متأخراً.
- زمن الاستلام MTTA (Mean Time to Acknowledge): من التنبيه إلى أن يفتحه محلل. وهذا المقياس هو الذي يكشف فجوات النوبات، فتنبيه الأولوية الأولى الذي ينتظر من مساء الخميس إلى صباح الأحد يظهر هنا.
- زمن الاحتواء والتعافي MTTC وMTTR: من القرار إلى إيقاف الضرر ثم إلى عودة الخدمة، ويقول لك هل خطة الاستجابة تعمل وهل الصلاحيات واضحة.
- نسبة الإنذارات الخاطئة لكل قاعدة: لا للطابور كله، لأن قاعدة واحدة بنسبة عالية تكفي لإرهاق الفريق.
- التغطية Coverage: أي أساليب المهاجمين في إطار MITRE ATT&CK لديك قاعدة تكشفها ومصدر بيانات يغذيها، وأيها اختبرت فعلاً.
- الحوادث التي لم تبدأ بتنبيه: كل حادثة عرفت بها من عميل أو مورد أو خبر هي فجوة مكتوبة.
وفي المقابل هناك مقاييس تفسد الفريق إذا جعلتها هدفاً، أشهرها عدد التنبيهات المغلقة في اليوم لكل محلل، والسبب أن المحلل الذي يقاس بما يغلق سيتعلم أن يغلق بسرعة، وهذا عكس ما تريد. ومثلها عدد القواعد، فمئة قاعدة جيدة أفضل من ألف قاعدة لا يقرأ أحد تنبيهاتها، وعدد السجلات المجمعة يومياً، فهو يقيس فاتورة التخزين لا الأمان. والقاعدة العامة: قس النتيجة التي تريدها، أي سرعة الاكتشاف والتحرك، لا النشاط الذي يبدو منتجاً.
وإذا أردت إطاراً أوسع من المقاييس، فنموذج SOC-CMM لنضج المراكز، الذي ظهر في 2016 من رسالة ماجستير وأصبح معياراً مفتوحاً، يقيس المركز في خمسة مجالات: الأعمال والأشخاص والإجراءات والتقنية والخدمات، وأداة التقييم الذاتي فيه ملف Excel مجاني. وفائدته الأكبر لشركة صغيرة ليست الدرجة النهائية، وإنما قائمة الأسئلة نفسها، فهي تذكرك بما لم تفكر فيه، مثل هل لدى المركز ميثاق Charter مكتوب يحدد ما يملك أن يفعله.
التكلفة: أين يذهب المال في المركز؟
عندما يسأل المدير «كم يكلف SOC؟» فهو غالباً يفكر في سعر الأداة، والأداة في المراكز الصغيرة أصغر بنود الفاتورة. والبنود الحقيقية أربعة، وترتيبها من الأكبر إلى الأصغر في أغلب الحالات:
- الأشخاص: الساعات التي حسبناها، أي محللان على الأقل لساعات العمل، وستة لمقعد على مدار الساعة، ومعها التدريب والشهادات والوقت الذي يضيع حتى يتعلم الموظف الجديد بيئتك.
- التخزين: الضابط 2-12-3-5 يطلب حفظ السجلات اثني عشر شهراً، وصفحة البداية السريعة في Wazuh تقدر للعقدة الواحدة من 50 إلى 200 جيجابايت لحفظ التنبيهات تسعين يوماً بحسب عدد الوكلاء، كما نقلناها في مقال Wazuh. فإذا بقي حجم البيانات اليومي ثابتاً فالسنة تحتاج قرابة أربعة أضعاف ذلك، ولهذا تفصل المراكز بين بيانات ساخنة مفهرسة للبحث السريع لأسابيع، وأرشيف مضغوط رخيص لبقية السنة.
- الخدمة أو الترخيص: الأدوات مفتوحة المصدر مثل Wazuh مجانية الكود، والتكلفة في السيرفر وساعات المهندس، وفي المختبر احتاجت العقدة الكاملة نحو 2.5 GiB من الذاكرة مع وكيل واحد. أما المنتجات التجارية فتسعر غالباً بحجم البيانات اليومي أو بعدد الأجهزة، وقد قارنا أمثلة منها بالأرقام في حلول الأمن التجارية وبدائلها.
- المورد: إذا اخترت نموذجاً مداراً أو هجيناً، وسعره يحدد في العرض بحسب الساعات المغطاة وعدد الأجهزة وما إذا كان يتضمن الاحتواء، فقارن العروض بالأسئلة التي ذكرناها في قسم النماذج لا بالسعر وحده.
والخطأ الشائع في هذا الحساب أن تقارن سعر المورد بسعر الأداة، فيبدو المورد غالياً، والمقارنة الصحيحة أن تقارنه بالساعات التي سيغطيها: كم تكلفك ستة محللين، أو أربعة مع المناوبة، مقابل عقد يغطي الليل والإجازات. وفي الاتجاه الآخر، لا تقارن عقد المورد بلا شيء، فالمورد لا يلغي حاجتك لشخص عندك يملك القرار ويعرف الأنظمة ويستلم ما يصعده المورد.
كيف تعرف أن المركز يعمل فعلاً؟
المركز الذي لا يرى أي حادثة لمدة ستة أشهر إما في شركة محظوظة، وإما لا يرى. ولا تستطيع أن تفرق بين الحالتين بقراءة لوحة التحكم Dashboard، لأن اللوحة الهادئة تبدو متشابهة في الحالتين. والطريقة الوحيدة أن تختبره: أن تنفذ سلوكاً يشبه سلوك المهاجم في بيئة مصرح بها، وترى هل يظهر في الطابور، ومتى، وماذا يفعل المحلل به.
والاختبار لا يحتاج فريقاً أحمر كاملاً في البداية. فأبسط شكل له أن تأخذ عشرة أساليب من ATT&CK تهمك، وتنفذ كل واحد منها بطريقة آمنة في مختبر معزول أو على جهاز اختبار مصرح به، ثم تسجل في جدول: هل وصل التنبيه، وبعد كم دقيقة، وهل فهمه المحلل. وهذا بالضبط ما سوف نفعله في مقال محاكاة الهجمات لاختبار الكشف في مرحلة اختبار الاختراق من هذا المسار، باختبارات Atomic Red Team الرسمية داخل Container معزول. وعندما يجتمع الفريق الأحمر الذي ينفذ والأزرق الذي يكشف على نفس الطاولة لتحسين القواعد يسمى ذلك الفريق البنفسجي Purple Team، وهو أسرع طريقة لتحسين التغطية في مركز صغير.
والاختبار الثاني الذي يغفل عنه الكثيرون أبسط من ذلك: هل ما زالت المصادر ترسل؟ فسيرفر توقف وكيله عن الإرسال بعد تحديث، أو جدار ناري تغير إعداد سجلاته، لا يطلق أي تنبيه، بل يقلل التنبيهات، فيبدو اليوم أهدأ. لذلك يحتاج كل مركز قاعدة تنبه عندما يسكت مصدر كان يرسل، وهي من أرخص القواعد وأكثرها قيمة.
من أين تبدأ شركة صغيرة؟
نرجع إلى شركتك ذات المئة والعشرين موظفاً. الحساب الذي رأيناه يقول إن مركزاً داخلياً كاملاً على مدار الساعة يعني ستة محللين، وهذا رقم لا تبرره أغلب الشركات بهذا الحجم. ولكن هذا لا يعني أنك لا تحتاج وظيفة المركز، وإنما يعني أن تبنيها على مراحل، والصورة التالية تبينها:

- السجلات: اجمع سجلات الأصول الحرجة، والحسابات المميزة، والوصول عن بعد، في مكان واحد، واحفظها اثني عشر شهراً على الأقل، وهذا نص الضوابط 2-12-3-1 و2-12-3-2 و2-12-3-5 في ECC. وهذه المرحلة وحدها تجعل التحقيق ممكناً بعد أي حادثة، حتى لو لم يكتشفها أحد في وقتها.
- تنبيهات لها مالك: عشر قواعد مهمة لا مئة، مثل دخول ناجح بعد تخمين، وحساب مدير جديد، وملف تنفيذي جديد في مجلد الموقع، وكل تنبيه يصل إلى شخص باسمه يقرؤه كل يوم عمل. وWazuh مع Suricata تكفي هنا تماماً.
- فرز ونوبة وخطة: طريقة فرز مكتوبة، وخطة استجابة فيها من يملك القرار، ومناوبة On-call للأولوية الأولى خارج الدوام بقواعد قليلة جداً ترسل إلى الهاتف، وتمرين محاكاة طاولي Tabletop مرة في السنة على الأقل.
- تغطية كاملة: عندما يبرر حجم الشركة أو طبيعة بياناتها، يأتي النموذج الهجين مع مورد داخل المملكة لليل والإجازات، أو فريق داخلي كامل للجهات الكبيرة.
وأغلب الشركات الصغيرة تقفز من لا شيء إلى المرحلة الرابعة بعقد مع مورد، وتكتشف بعد شهور أن المورد يرسل تنبيهات قليلة، لا لأن الشبكة آمنة، وإنما لأنه لا يستقبل إلا سجلات الجدار الناري. لذلك ابدأ بالمرحلتين الأوليين حتى لو قررت التعاقد لاحقاً، فهما ما يجعل أي مورد مفيداً.
دليلمراقبة السيرفرات مع Wazuh: من السجل Log إلى حظر المهاجمشغلنا Wazuh مع وكيل على سيرفر تجريبي، فكشف تخمين كلمات مرور SSH وحظر المهاجم تلقائياً، ونبه على ملف PHP دخيل خلال ثانية.
دليلمراقبة الشبكة واكتشاف التسلل IDS مع Suricata وZeekمختبر حقيقي يقرأ الحركة نفسها بأداتين، فيكشف Suricata الهجمات المعروفة ويكتب Zeek سجلاً لكل اتصال، مع الضبط وفقد الحزم.
دليلالاستجابة للحوادث Incident Response مع TheHiveحولنا تنبيهاً عن دخول مريب إلى حساب FTP إلى قضية في TheHive بمهام ومؤشرات وأسلوب ATT&CK، وقسنا ما تسمح به الرخصة فعلاً.
دليلخطة الاستجابة للحوادث Incident Response وكتيبات التشغيل Playbooksخطة استجابة وكتيبا حساب مخترق وفدية على NIST SP 800-61r3، مع مختبر نستعيد فيه البيانات من نسخة restic.ماذا تطلب الضوابط الأساسية؟
الضوابط الأساسية للأمن السيبراني ECC لا تستخدم كلمة SOC، ولكنها تطلب وظائفه بالتفصيل في مكونين، والجدول التالي يربط كل ضابط بالخطوة التي تحققه في دائرة المركز، والنصوص من وثيقة ECC-2:2024:
| الضابط | ماذا يطلب | أين يقع في دائرة المركز |
|---|---|---|
| 2-12-3-1 | تفعيل سجلات الأحداث للأصول المعلوماتية الحساسة | الجمع |
| 2-12-3-2 | تفعيل سجلات الحسابات الحساسة والمميزة وأحداث الوصول عن بعد | الجمع |
| 2-12-3-3 | تحديد تقنيات SIEM اللازمة لجمع السجلات | الجمع والكشف |
| 2-12-3-4 | المراقبة المستمرة لسجلات الأحداث | الكشف والفرز، وهنا سؤال النوبات |
| 2-12-3-5 | مدة الاحتفاظ بالسجلات لا تقل عن 12 شهراً | الجمع، والتحقيق لاحقاً |
| 2-13-3-1 و2-13-3-2 | خطط الاستجابة وإجراءات التصعيد، وتصنيف الحوادث | الاستجابة |
| 2-13-3-3 و2-13-3-4 | إبلاغ الهيئة بالحوادث، ومشاركة التنبيهات والمؤشرات والتقارير معها | الاستجابة |
| 2-13-3-5 | جمع معلومات التهديدات Threat Intelligence والتعامل معها | الكشف والتحسين |
| 4-1-3-2 | مراكز المراقبة المدارة بالوصول عن بعد داخل المملكة بالكامل | اختيار نموذج التشغيل |
ولاحظ أن الضابط 2-12-3-4 يقول «المراقبة المستمرة»، ولا يحدد أنها 24/7 بمحللين في غرفة، ولكن المدقق سوف يسألك كيف تراقب باستمرار، وما الذي يحدث لتنبيه في منتصف الليل. والإجابة المقبولة هي التي تستطيع أن تثبتها بسجلات: جدول مناوبة، وتنبيهات وصلت وفتحت، وأوقات استلام مقاسة. وقد شرحنا الضوابط بلغة بسيطة في الضوابط الأساسية بلغة بسيطة.
أخطاء شائعة
- شراء الأداة قبل تحديد الوظيفة: SIEM جديد دون أحد يقرأ تنبيهاته هو فاتورة تخزين، لا مركز عمليات.
- مقعد واحد لمحلل واحد: رأينا بالحساب أن محللاً واحداً لا يغطي حتى ساعات العمل، لأن إجازته وتدريبه ساعات بلا أحد.
- جمع كل شيء من المصادر السهلة: فيمتلئ القرص بسجلات الوصول، وتغيب سجلات الهوية والحسابات المميزة.
- التعاقد مع مورد قبل الجمع: المورد لا يكشف ما لا ترسله له، وهدوء تقاريره لا يعني هدوء الشبكة.
- مورد يكتشف ولا يملك أحد عندك القرار: تنبيه في الثالثة فجراً يصل إلى بريد لا يقرؤه أحد قبل الثامنة.
- قياس عدد التنبيهات المغلقة: يعلم الفريق أن يغلق بسرعة، لا أن يفهم.
- اعتبار الهدوء نجاحاً: مصدر توقف عن الإرسال يجعل اليوم أهدأ، فأضف قاعدة للمصادر الصامتة.
- عدم اختبار المركز: الجهة التي اختبرتها CISA كانت ناضجة ولم تر الفريق الأحمر طوال التقييم.
- نسيان خطوة التحسين: نفس الإنذارات الخاطئة كل يوم حتى يتوقف المحللون عن القراءة بانتباه.
جدول قرار: أي شكل يناسبك؟
| إذا كانت شركتك | الشكل المقترح | أول خطوة |
|---|---|---|
| أقل من 50 موظفاً، بلا خدمات حرجة في الليل | وظيفة المركز ضمن عمل مسؤول التقنية في ساعات العمل، مع مناوبة للأولوية الأولى | جمع السجلات وعشر قواعد مهمة |
| 50 إلى 300 موظف، ومتجر أو خدمة تعمل كل الساعات | محللان في ساعات العمل ومورد داخل المملكة لليل والإجازات | القواعد والبيانات عندك قبل العقد، وكتيبات تشغيل للمورد |
| جهة تنطبق عليها ECC وتحمل بيانات حساسة | هجين أو داخلي بحسب الحجم، مع أدلة مراقبة مستمرة قابلة للتدقيق | ربط الضوابط 2-12 و2-13 و4-1 بالإجراءات والأدلة |
| جهة كبيرة أو بنية تحتية حرجة | مركز داخلي 24/7 بمستويات وهندسة كشف وصيد | الحساب الحقيقي للنوبات، واختبار دوري بفريق أحمر أو بنفسجي |
الخلاصة
- مركز العمليات الأمنية وظيفة لا غرفة: أن يرى أحد ما يحدث، ويقرر، ويتحرك، في وقت معقول.
- كل مركز يعمل بدائرة الجمع والكشف والفرز والاستجابة والتحسين، والتي تتوقف عند الكشف أداة لا مركز.
- المحلل بعقد 40 ساعة يعطي 1736 ساعة في السنة، فالمقعد على مدار الساعة يحتاج ستة محللين، وساعات العمل وحدها تحتاج اثنين.
- النماذج أربعة: داخلي ومدار وMDR وهجين، والهجين يناسب أغلب الشركات المتوسطة، والمورد بالوصول عن بعد يجب أن يكون داخل المملكة بحسب الضابط 4-1-3-2.
- قس الوقت لكل فترة ولكل أولوية، ولا تقس عدد ما يغلق.
- اختبر المركز بسلوك يشبه المهاجم في بيئة مصرح بها، وراقب المصادر التي تسكت.
- الشركة الصغيرة تبدأ بالسجلات والتنبيهات التي لها مالك، قبل أي مورد أو أداة جديدة.
وأقرب المقالات إلى هذا الموضوع في المسار:
دليليوم محلل SOC: فرز التنبيهات Alert Triage من التنبيه إلى القرارستة عشر تنبيهاً حقيقياً من Wazuh وSuricata نفرزها واحداً واحداً بالإثراء من Zeek حتى القرار والتصعيد.
دليلمراقبة السيرفرات مع Wazuh: من السجل Log إلى حظر المهاجمشغلنا Wazuh مع وكيل على سيرفر تجريبي، فكشف تخمين كلمات مرور SSH وحظر المهاجم تلقائياً، ونبه على ملف PHP دخيل خلال ثانية.
دليلمراقبة الشبكة واكتشاف التسلل IDS مع Suricata وZeekمختبر حقيقي يقرأ الحركة نفسها بأداتين، فيكشف Suricata الهجمات المعروفة ويكتب Zeek سجلاً لكل اتصال، مع الضبط وفقد الحزم.
دليلكيف يعمل محرك كشف SIEM من الداخل؟كيف يجمع SIEM ملايين السجلات ويوحدها ويطبق قواعد الكشف، مع خط أنابيب Vector وLoki وقاعدة Sigma تطلق فعلاً.
دليلخطة الاستجابة للحوادث Incident Response وكتيبات التشغيل Playbooksخطة استجابة وكتيبا حساب مخترق وفدية على NIST SP 800-61r3، مع مختبر نستعيد فيه البيانات من نسخة restic.
دليلأدوار الأمن السيبراني Careers: ماذا يعمل كل دور، ومن أين تبدأ؟تسعة أدوار في الأمن السيبراني من المراجع الرسمية: اليوم العادي والمهارات والأدوات، ومن أي مستوى يبدأ كل دور.سجل التحديثات
- أكتوبر 2026: كتابة المقال، وحساب النوبات بسكربت على Python 3.13.17 بحدود المادتين 98 و109 من نظام العمل، والضوابط من وثيقة ECC-2:2024.