security operation center fundamentals

ما هو security operation center (soc) ؟


هو عبارة عن تكامل بين ثلاث اشياء وهذا التكامل قد يكون في مكان مستقل وموحد  ومن الممكن ان لا يكون المكان موحد فمثلا قد تكون الشركة عندك بتأخذ  technology كخدمة remotely او قد يكون people هو ال remotely  فببساطة هو يعد مصطلح او مفهوم 

١- people 
٢- process 
٣- Technology 
فأحنا عندنا ال people هو الإشخاص المؤهلين للعمل 
و ال process هو الطريقة التي يؤدوا العمل بها 
و ال technology هي الأدوات المستخدمة 
(network security solutions) 
ونحن في هذه المقالة سوف نحكي عن people و process  

-كل شخص شغال في soc سوف يخبرك بشكل مختلف لل soc الذي يعمل به فأنسب تعريف لل soc هو ما تم ذكره بالأعلى وهو مجموع الثلاث نقاط التي سلف ذكرها  فمن الممكن مثلا ان تكون ال Technology في الشركة نفسها أو يكون يتم الدخول عليها remotely 

* نبداء بال people  هو تنظيم الإشخاص في ال soc :

"ملحوظة" : انا هنا بحكي لو انتا شركة كبيرة مثل Google أو face book أو Microsoft وغيره يمكن القول ما سوف يتم شرحه الان هو اوسع شكل ورؤية ومنظر لل SOC ، يوجد  شركات كثيرة جدا بتكتفي ب L1 و L2 و L3 
%( انصحك ان تقراء هذه الملحوظة مرة اخري عند الانتهاء من القراءة لكي يتضح لك كلامي اذا لم يكن واضح )%


نبداء: 
 فببساطة احنا عندنا بنبداء ب soc manager 
ثم 
تحته  يكون ال soc lead 
ثم 
تحتهم عندنا soc L1 (alert analysis) 
 ثم 
soc L2 (incident response )
 ثم 
soc L3 ( threat hunting)
 ثم 
عندنا SME ( subject matter expert) وهذا بيكون منقسم ل digital forensic 
و threat intelligence 
و malware analysis
و reverse engineer
 ثم 
بعد SME عندنا IR ( incident response ) 
ثم 
عندنا SOC engineer 


**** نبداء نشرح كل واحد منهم بالتفصيل ****


# soc manager  : هو يربط بين ال SOC و عملياته و بين توجهات وأستراتيجيات المؤسسة والتأكد انه يخدم طلبات المؤسسة والرؤية خاصتها 

# soc lead : هو المسؤل عن ادارة اوقات العمل و التنسيق بين اعضاء فريق ال SOC بشكل مباشر ويومي 

# SME ( subject matter expert )  : هو شخص متخصص في فرع بحد ذاته مثل شخص متخصص في malware analysis أو digital forensic وغيره 

# SOC L1 ( alert analysis)  : هو خط الدفاع الأول في المؤسسة و وظيفته تحليل التنبيهات ( alerts ) وينظر لو كانت true positive (صحيحة) يقوم  يعمل Escalation (تصعيد) لل alert عن طريق IMS
 (incident management system) 
لل SOC L2 وأنا L1 بفتح قضية أو case وبكتب فيها أسم القضية ( case ) والتاريخ وبيانات القضية وبكتب ما يسمي 
ب appsorvapol ( الشئ الذي انا لاحظته وقلت بناء عليه ان هذه حادثة ) 

# SOC L2 : بينظر الي  ال scope  وال impact
-(يعني مدي انتشار الحادثة هذا هو ال scope)  
-(أما ال impact هو المهاجم الي اي مرحلة وصل في التوغل في الشبكة عندي ، أو ال malwear  الي أي مرحلة وصل عندي)

# SOC L3  & IR : في حال كانت الحادثة خفيفة وليست معقدة ال L3 مع L2 يحلوها ولكن لو معقدة يتم ارسالها الي  قسم ال IR الخاص وطبعا معظم المؤساسات لا يوجد عندهم هذا القسم ولو  كان موجود بيكون out source  يعني متعاقد مع شركة هي من تقوم بعمل هذه الخدمة له  

وكما قلت في الاعلي هناك شركات كثيرة جدا لا يوجد عندهم هذه التقسيمة وبتكون مجرد L1  و L2 و  L3  وشكرا ، هذا الكلام الذي تم شرحه هو يحدث مع الشركات الكبيرة فقط كما ان L3 هو المسؤل عن اتخاذ القرار Decition making 

# SOC engineer  : هو المسؤل عن ادارة ال technology


* نبداء بال process هو الطريقة التي سوف يتم تأديت او انجاز العمل بها : 


-هؤلاء هم الخطوات الست المتبعة في عمل incident response أو نستطيع ان نقول عليها  process 
###( process=play book )###
((***طبعا قبل شرح هذه الخطوات الستة علينا شرح كيف يتم تصميم SOC ؟ ***))

#في البداية نحن عندما نقوم بعمل SOC  أول خطوة نقوم بها هي soc charting بمعني لماذا نحن قمنا بتصميم  هذا ال SOC ؟ وما هي ال use case ( الاستفادة ) من هذا ال soc ؟ ومن يجيب علي هذه الاسئلة هية الادارة العلية وهذه الادراة اول شئ تقوم به هو ان تقوم بعمل use cases بمعني انهم يقوموا بعمل threat analysis ( threat modelling ) وهذا يتم عن طريق انك تفكر وتنظر ما هية ال Assets الخاصة بي التي من الممكن أن تكون خطيرة وما هي التهديدات التي من الممكن ان تقع علي هذه ال Assets وما هو الشئ الذي انا متخوف منه ولنقل مثلا انا خائف من ransomware بسبب اني الشركة لا يوجد للاصولها او ملفاتها الهامة (Back up ) ولا يوجد عندي المال الكافي لدفع الفدية فأنا قمت بعمل SOC من اجل عمل prevent & detection & response ( امنع واكشف وأرد ) علي هذه الخطورة بأقل ضرر ممكن  بحيث استطيع ان أواصل أعمال المؤسسة بشكل طبيعى وهذه هي الاولوية الأولي من الغرض من القيام بتصميم SOC عندي ، طيب انا ايضا خائف من تسريب البينات ( exfiltration) ولكن خطورة هو في الدرجةالثانية فهنا يكون تسريب البينات هو الاولوية الثانية او الغرض الثاني من قيام تصميم soc عندي 


# نبداء الان نحلل ال attacks الخاصة بال ransomware كيف تحدث وما هي ال attack vectors أو (  IOC's ) أو ماهية مؤشراته او ما هو طريقة  مدخل ال attack الذي يقوم به المهاجم بدخول الي شبكة الشركة أو يبداء بها الهجوم ونبداء ننظر ونحلل كل هذا الكلام وننظر كيف نحمي أنفسنا منه فمثلا ممكن يكون مدخل الهجوم هو من services مثل SMB مثلا  أو يكون phishing ، والان بعد ان عرفنا عناصر الهجوم نبداء نبحث عن ال data sources بمعني نبداء نبحث عن مصادر البيانات ببساطة الأماكن التي من الممكن أن أجمع منها بيانات مهمة وتفيدني في دحر او منع الهجوم وتحليل العناصر الخاصة بالهجوم ومن هنا نبداء نكتب use cases في ال SIEM ونبداء أيضا في البحث عن ماهية ال  security solution التي من الممكن ان أفعلها وتقوم بأكتشاف ومنع هذا الهجوم ولنقل مثلا اني احتاج ان امنع ال execution فهنا عندنا تطبيق مثل app locker هو يعد white list  وعندنا ايضا ان نطبق least privilege ، طيب في حال حصل تخطي لهذه ال security control او security solution ببساطة في حال حدث by bassing كيف اكتشف الهجوم ؟ وفي حال اكتشاف الهجوم ما هي خطوات تحليل هذا الهجوم ؟  و كيف اقوم بأحتواء 
( containment) هذا الهجوم حتا لا يكون ال impact مرتفع جدا ؟ وكيف اقوم بعمل أزالة لهذا الهجوم او malware 
(Eradication ) ؟ وكيف اقوم بعمل ( recovery ) وهو ارجاع أعمال المؤسسة لشكلها الطبيعي ؟ وكيف استفيد من هذا الهجوم بحيث انه لا يتكرر مره اخري ( lesson learned)؟، وطبعا كل هذا تقوم به من اجل معرفة كم جهاز مصاب عندي في الشبكة
% (scope) و ( impact)%
 والي اي مدي او مرحلة وصل المهاجم في الشبكة عندي 
وهذا يتم عن طريق او علي هيئة انك تقوم بعمل use cases أو تحسن ال use cases عندك بطريقة تجعلك تمنع هذا الهجوم وتجعلك أكثر استعداد ، والان عليك ان تعرف عند كتابة use case ننظر  ونبحث ما هي المشكلة التي انا أحتاج حل لها ( ما هو الخطر الذي اريد منعه؟) وكيف اقوم بعمل detection ؟ ببساطة انا كل attack عندي بذهب وبكتب له خطوات للتحليل ودحر او منع لهذا الهجوم وهذا ما يطلق عليه play book (( مرجع لي حال حدوث هجوم (incident )يساعد في التحليل ويساعد في  التعامل مع use cases عندي )) 

%%%ملحوظة هامة : نحن عندما نقوم بعمل soc لشركة اول شئ سوف يسئلوا عليه هو ، ما هي الاشياء التي نستطيع ان نستفيدها من ال SOC الذي سوف تقومون به ؟ وما هي الهجمات التي يستطيع ان يمنعها؟ ، ببساطة نقدر نقول ما هي ال use case او  POC ؟ بمعني اثبات لكفاءة ال SOC %%%
%%%ملحوظة هامة : لكل use case موجود لها play book ببساطة ال play book هو موجود به كيف يتعامل ال SOC مع ال use case بطريقة منظمة %%%

- الان كيف نكتب او نصمم  ال use case بشكلها البدائي : 
١-  نكتب وصف  عن ما هي المشكلة ( description ) 
٢- نكتب المتطلبات لحل هذه المشكلة او ببساطة نكتب المكان الذي من الممكن ان نجد فيه ال  logs  التي منها استطيع حل المشكلة وتحليلها ( main data source) ( requirements )
٣- ( second data source) المكان الثاني او البديل او ال logs الموجودة عندي في الشبكة و التي استطيع ان اعرف منها ان اكتشف المشكلة او الهجوم 
٤- ( analytic logic) ببساطة ايضا ،  بناء علي ماذا ؟ او ماهي الموشرات التي لو نظرت اليها و وجدتها عندي اقدر اعرف ان هذا هجوم (IOC'S) ، وأيضا بقوم بعمل
 (pseudo code rule or pseudo code use case )
ببساطة ماهية الخطوات المتبعة للاكتشاف المشكلة أو الهجوم 
٥- recommended steps وهذه هي الخطوات التي من المفترض ان يقوم بعملها ال SOC بالتفصيل من اجل ان يحلل المشكلة او الهجوم ( play book) وهذه يتم تكوينها بناء  علي كل مراحل ال incident response عندي 
٦- (false positive reduction) وهذا بمعني في حال كانت هذه ال rule او ال use case تأتي بأنذرات خاطئة كثيره ما هو الشئ المرشح ( recommended) لكي نقوم بجعل هذه ال rule او ال use case افضل بمعني اصلاحها (tuning) 

"" طبعا ماذال هناك الكثير من الاشياء يمكن كتابتها ولكن الست نقاط الذي تم ذكرهم بالاعلي هم الاهم و الضرورين وطبعا لا ننسي يمكن كتابت ال rule او ال use case بمساعدة MITRE ATTACK أو threat intelligence "" 
×××××××××××××××××××××××××××××××××××××××××
نبداء بشرح الست مراحل الخاصة بال incident response 
×××××××××××××××××××××××××××××××××××××××××
١- preparation وهو التحضير بمعني اعمل تدريبات لل team عندي واجهز ال tools التي سوف يتم استخدامها في حال حدوث incident وايضا في حال حدوث الحادثة (incident) ما هي ال communication channel بمعني ماهي طريقة التواصل بين افراد ال team هل عن طريق IMS أو عن طريق هواتف لاسلكية ؟ وايضا كيف تتحدث مع ال vendor المسؤل عن SIEM وكيف تتحدث مع الجهات القانونية وكيف يتم الاعلان عن الحادثة ( incident ) ، وايضا بعد كل هذا ابداء واقوم بعمل purple team بمعني اجمع ال red team وال blue team واجعل ال red team يهاجم ثم يخبر ال blue team بما فعل وتظل مستمرة هذه الدورة الي ان يتم تحسين ال use cases عندي كما ان هذا يساهم في جعل  الاثنين يصبحوا افضل سواء red أو blue ، ثم الخطوة الثانية هي عمل pentesting  لغرض قياس ال security controls عندي وهل بها ثغرات أم لا ؟  هل ال configuration الخاصة بها صحيحة ام لا ؟  وفي هذه الخطوة انا لن اخبر ال blue team عندي اننا نقوم  بعمل pentesting علي المؤسسة وهذا من اجل ان اقيس سرعة استجابة ال blue team وكفائته ويتم تحديد هذا عن طريق الوقت المستغرق للاستجابة (detection) و الوقت المستغرق للرد ( response) والوقت المستغرق للاسترجاع ( recovery) وهؤلاء الثلاثة يسموا ب dwell time (KPI) أو يمكن ان يطلق عليها matrix ، والان نبداء الخطوة الثالثة وهي ال red teaming أو adversaries simulation وسوف يكون هذا موجه لقياس كفائة ال blue team علي عكس الخطوة الثانية (pentesting) هو كان موجه لقياس كفائة ال security controls كما ان ال red team أهم عامل فيه هو ان لا يتم كشفه علي عكس ال pentesting ممكن يتم اكتشافك وتستمر في العمل عادي ، وطبعا كل هذه الخطوات بيحصل فيها incident response steps  وكل ما تم تكرار هذه ال cycle اصبحت الكفائة اعلي .

٢-identification هو ينقسم لجزئين :
واحد هو detection واثنين هو analysis 

#*1*# detection : هو اكتشاف ال alert ، مع وضع في الحسبان ال incident response steps يمكن تطبيقها مع ال threat hunting وطبعا هذا بمعني انك بتذهب وتقوم بعمل detect في حالة اذا اتي لك alert او لو انتا ذهبت لكي تقوم بعمل بحث بناء علي معلومات انت تحصلت عليها أو شخص من الادارة العليا أمرك بهذا ، ومن ثم بعد كى هذا بتجد (IOC'S) المؤشرات التي تدل علي حدوث هجوم فتبداء في الجزء الثاني وهو .
#*2*# analysis: هو البداء في تحليل الهجوم المحتمل بالتفصيل .

٣- containment وهذه 99% من مؤساسات العالم تفشل بها لان في الطبيعي الاغلب بيقوم بالانتقال من  identification الي ال Eradication  بدون ان يمروا بالخطوة الخاصة بال containment مع العلم ان هذه الخطوة يجب القيام بها بشكل صحيح من اجل النجاح في الوصل للخطوة الرابعة Eradication  بدون اخطاء ،  كما ان ايضا ال containment يتكون من جزئين :
واحد active defense والجزء الثاني intelligence development 
#*1*#  active defense: هو ان نحاول ان نراقب بشكل مباشر ( real life ) نشاطات او تحركات المهاجم ونبداء في عزله عن الشبكة الرئيسية بطريقة لا تثير الشبهة له 
#*2*# intelligence development: نبداء الان بترك المهاجم يتحرك ويعمل حتا نقوم بتجميع معلومات قدر الإمكان عن المهاجم وهذه الخطوة تساعد علي جعل الانتقال للخطوة الرابعة Eradication يكون مؤكد ويكون بطريقة صحيحة وهذه المعلومات نبداء بعمل اكتشاف وتحليل لها من جديد نرجع ونقوم بعمل ( identification )  من جديد  ، وكل هذا الكلام يساعد في الخطوة الرابعة  ( Eradication ) وهذا يجعل عند القيام بهذه الخطوة تصبح متأكد وضامن انه المهاجم لم يستطيع الرجوع مره اخري .

٤- Eradication  هي ازالة الهاجم من الشبكة .

٥- recovery هو العودة لجعل اعمال المؤسسة والشبكة طبيعية عندي فببساطة هو بعدما قمت بعزل الجهاز المستهدف من الشبكة ، ارجع واضعه مره اخري في الشبكه  واتأكد من انه سليم وعاد للعمل بشكل طبيعي وهذا طريق مراقبته لفترة من الوقت .

٦- lessons learned  وهو ان يقام اجتماع وتطرح فيه اسئلة مثل من قام بأختراقنا والهجوم علينا ؟ ولماذا ؟ وماذا كان بأمكاننا أن نفعل لكي نمنع هذا الاختراق او الهجوم ونستحيب له بصورة افضل ؟ وماذا يمكن ان نفعل في المستقبل حتا لا يتكرر هذا الاختراق او الهجوم ؟ 





تم بحمد الله…..ان اخطأت فمن نفسي ومن الشيطان وان اصبت فهوا من فضل الله علي .


تعليقات

المشاركات الشائعة من هذه المدونة

network security monitoring (NDR)

XDR  (extended detection and response)