x32x01
أدارة أكتب كود
- بواسطة x32x01 ||
لو عايز تتخصص في ال Security ف طالما خدت القرار دة يبقي نروح لأول سؤال : انا همشي ف انهي سكة في ال Security ?!
دلوقتي انت عندك 3 سكك تمشي فيهم في ال Security كل سكة فيهم ليها كورساتها و شهادتها و مجالاتها و دنيتها لكن الحاجة الوحيدة الي بتتفق عليها الـ 3 سكك دي انك بتحمي المكان الي انت فيه من ال Hackers و ان كل همك تأمين ال 3 حاجات بتوعك الي هما ال Data و ال Network و ال Infrastructure ايان كان ال Data نوعها ايه اياً كان ال Network متوصلة فين اياً كانت ال Infrastructure متخزنة فين :
- أول سكة ليك هي في ال Blue Team يعني هتشتغل Defensive Security و كلمة Defensive Security ترجمتها الحرفية في القاموس (الأمن الدفاعي) بمعني انك هتبقي راجل كل مهمتك تأمين المكان الي انت عن طريق انك عمال تبني حيطة ورا حيطة ورا حيطة ورا حيطة يعني بتامن المكان الي انت فيه عن طريق حاجة اسمها Security Layers كل Layer من ال Layers دة مسؤول عن تأمين جزء معين و ال Layers دي أنواعها كتير فيه منها ال Firewalls الي مسؤول عن تأمين ال Internal Network بتاعتك من الي داخل ليها و الي طالع منها , و فيه عندك ال Web Application Firewall الي هو ال WAF دة بيبقي مسؤول عن تأمين ال Web Applications بتاعتك برضو من ال Input الي داخلها و من ال Output الي هي بتطلعه و , عندك Proxy سواء كان Forward Proxy او Reverse Proxy ف هو الغرض منه برضو تأمين ال Infrastructure بتاعتك سواء لما يكون ال Traffic جايلها او طالع منها ف هو الي بينقل ال Traffic دة بنفسه بال IP بتاعه هو عشان لو حصل اي Attack يحصل عليه هو بس مش ع ال Infrastructure نفسها , و عندك ال UTM دة الي هو Unified Threat Management دة بيبقي جهاز واحد بيشتغل ب أكتر من Module يعني بيبقي فيه Firewall و Antivirus و VPN Gateway و Web Filter و Authentication Management و Proxy و Load Balancer و حاجات تانية كتير....
و فيه من ضمن ال Responsibilities بتاعتك كا Blue Team Member انك تكون كويس في ال IH الي هي ال Incident Handling لأن انت بطبيعة شغلك ف انت ال FRP بتاع الشركة او المكان الي انت فيه...كلمة FRP الي هي First Responder Person يعني انت أول واحد بيتصرف لما بيحصل ال Attack او ال Hack علي الشركة انت اول واحد بترد علي الموضوع دة هي فيه 7 مراحل بتعملهم كا Incident Handler بس مش وقته ان احنا نتكلم فيه بس الفكرة ب اختصار انك بتحاول توقف ال Attack وال Breach و ال Leakage الي بيحصل دة بحيث انك تحاول تقلل الضرر لأقل درجة ممكنة و بعد كدة بيجي بعد ال Forensics Investigator يشوف ايه الي حصل بس ال Investigator بيجي بعد المصيبة ما بتكون حصلت انما انت كا Incident Handler انت الي بتيجي اول المصيبة ما بتحصل....
ما علينا من ال Incident Handling و ال Blue Teaming مش موضوعنا ال Part دة
- تاني سكة انت ممكن تمشي فيها الي هي موضوعنا انهاردة هي سكة ال Red Team الي هي ال Offensive Security و كلمة Offensive Security في القاموس ترجمتها الحرفية هي الأمن العدواني بمعني انك هتكون مسؤول انك هتحاول تكسر كل ال Security Layers الي بناها ال Blue Team و تحاول توصل ال Target بتاعك عن طريق حاجتين يا اما توقع ال Security Layers دة يا اما حاجة تانية انك
تـ Evasion ال Security Layers دي يعني تعدي منها من غير هي ما تاخد بالها تدخل في وسط الناس الي داخلة من غير ما حد يشوفك دة نفس ال Concept الي هتشتغل بيه في ال Red Team
- تالت سكة انت ممكن تمشي فيها بس دي مبتجيش كدة من أول الطريق دي بتيجي بعد ما تكون مشيت في واحدة من السكتين الي فوق دول الي هي سكة ال Purple Team
ايه هو ال Purple Team دة بقي الي هو ال Auditing الي هو بيراقب شغل ال Blue Team و ال Red Team عشان يتأكد ان هما الاتنين عاملين شغلهم صح .
نيجي بقي لتاني سؤال : انا هفترض انك جاوب علي اول سؤال ب انك هتختار سكة ال Offensive Security و ال Red Team و هتمشي فيها ف علي اساس الافتراض دة هنشوف السؤال الي جاي : انا دلوقتي شوفت و انبهرت و عايز ابقي Offensive Engineer ايه بقي المطلوب مني اعمله ؟!
فيه مجلة من اشهر المجلات الموجودة في مجال ال Security اسمها CSOonline
و كلمة CSO معناها Chief Security Officer المهم كان فيها مقالة قبل كدة قرأتها كان فيه واحد اسمه Daniel Cuthbert دة بيشتغل COO الي هو Chief Operating Officer دي من شركات ال CyberSecurity الكبيرة الي بقالها حوالي 17 سنة في ال Market المهم الراجل دة قال Quote كدة بصراحة ممكن تبقي هي احسن Quote انا قراتها في المجلة دي ... الراجل قال :
Red teaming is in vogue this year. Every company and their dog all of a sudden are red team experts
يعني ال Red Teaming و ال Offensive Security بقوا هما موضة السنة و كل شركة فجأة بقت هي و الكلاب بتاعتها (الي هما ال Security Engineer ) بقوا يقولوا علي نفسهم انهم خبراء في مجال ال Red Team او ال Offensive Security .
بالرغم من ان التصريح دة فيه نوع من الغرور الي هو عايز يقولك الناس كلها بقت بتفهم في المجال فجأة الي احنا شغالين فيه بقالنا 17 سنة و كدة بس ف نفس الوقت فيه نوع كبير من الحقيقة و الواقعية و دة لسبب معين :
ان الناس الي شغالين في ال Security كلهم فجاة زهقوا من حتة ال Blue Team و انهم يقعدوا يحطوا في Security Layers كتير ورا بعض و في الاخر ييجي Hacker يقوم كاسر كل الي هما عملوه و يعدي (انا مش بقول ان ال Blue Team ملهمش لازمة بالعكس دة هما لو مش موجودين احنا كمان مش هنكون موجودين انا بقول بس الي هما فكروا فيه) ف كله فجأة قرر يعمل Career Shifting و يحول لل Offensive Security و فعلاً فجأة لقينا شركات كتير طلعت (بتقول) انها شركات Cyber Security و انها شركات Red Teaming و احنا بنشتغل في ال Offensive Security طب جميل جداً الكلام دة نيجي بقي لموضوع سؤالنا دة....فيه ناس كتير من الي عملوا Shifting دول قبل ما يعملوا Shifting مسألوش نفسهم ايه الي احنا محتاجينه عشان نقدر ندخل و ننافس في ال Field دة لأن ال Red Team أصعب بمراحل (من وجهة نظري) من ال blue Team الي انت توقف Body Guards علي الباب اسهل بكتير من انك تحاول تعدي من ال Body Guards دول من غير ما ياخدوا بالهم و ساعات بتضطر انك توقع ال Body Guards كلهم عشان تعدي....
المهم بالنسبة لل Responsibilities الي انت مسؤول عنها كا Red Team Member او كا Offensive Security Engineer هما كتير لكن اكبر و اهم Responsibility فيهم كلهم هي ال Ethical Hacking....
ال Ethical Hacking هو ال Concept قايم عليه كل فكرة ال Offensive Security....طب ايه هو ال Concept دة هو انك بتبقي عندك خزنة مقفولة و انت عارف ان جواها فلوس...ال Ethical Hacking هو انك تحاول بكل الطرق الممكن انك تفتح الخزنة و توصل للفلوس (((بس))) متمدش ايدك ع الفلوس لأ دة انت تكتب Report لأصحاب الخزنة عن الطرق الي انت عملتها عشان يقفلوا الطرق دي عشان لما ييجي الحرامي الي بجد و يحاول يسرق الفلوس يلاقي الطرق مقفولة...سموها Ethical Hacking سموها White Hat Hacking لكن ال Concept دة الوحيد الي بيفرقك عن اي Hacker تاني ممكن يكون شغال Black Hat...
فيه ناس كتير فاكرة ان ال Ethical Hacking دة مجال حد بيتخصص فيه يعني فاكرين ان فيه حاجة اسمها Ethical Hacking Engineer المعلومة دي مش صح 100% لأن ال Ethical Hacking دة عبارة عن Concept تحتيه مجالات كتير كلها داخلة في بعضها لكن الحاجة الي كلنا متفقين عليها ان مفيش حاجة اسمها Ethical Hacking Engineer....
نيجي للسؤال التالت : انا عرفت ال Theoretical Responsibilities الي هكون مسؤول عنها طب ايه هي ال Technical Responsibilities الي هكون مسؤول عنها ؟
انت كا Offensive Engineer او كا Red Team Member بيبقي عليك انواع مختلفة من ال Technical Duties لكن اكبرهم و الي لامم كل حاجة تقريباً هو ال Penetration Testing.....انا في وجهة نظري ان احنا ممكن نختصر كل ال Offensive Security و كل ال RedTeam في ال Penetration Testing لسبب واحد : انك و انت بتعمل Penetration Testing بتضطر تستخدم باقي ال Responsibilities عشان تحقق ال Target بتاعك فيه ناس ممكن تختلف معايا في موضوع اني اختصر ال Offensive في ال Penetration بس مش مهم دة اختلاف اراء مش اكتر لكن هنفضل كلنا متفقين ان احنا في ال Penetration Testing بنستخدم كل حاجة و هشرح ال Scenarios الي بنضطر نستخدم فيها كل حاجة :
ال Penetration Testing بيبقي مقسوم 3 أنواع :
يا اما Black Box يا اما Grey Box يا اما White Box
طبعاً معظم الناس عارفة الفرق ما بينهم و الي مش عارف يقدر يـ Search مش هنضيع وقت في شرحهم دلوقتي...الفكرة بقي ليه بختصر كل ال Offensive Security في ال Penetration Testing لأن مثلاً لما اكون في Project و يكون Black Box يعني انا مش عارف اي حاجة عن ال Target الي انا بعمل عليه Penetration Testing
ف بيبقي قدامي سيناريوهات كتير عشان ابتدي مرحلة ال Exploitation بتاعتي بعد طبعاً ما بخلص ال Information Gathering و ال Reconnaissance و ال Scanning و ال Vulnerability Assessment بيبقي قدامي اني مثلاً اعمل Social Engineering Campaign اني ابعت Spam Campaign للـ Mail List بتاعت الموظفين الي انا جبتها في Phase ال Reconnaissance و ال Spam دة يا اما هحط فيه Malicious Link و يبقي Phishing Campaign يا اما هعمل ال Scenario الي انا عايز اتكلم فيه اني هحط Malware في ال Spam دة
ف هنا عشان اعمل Penetration Testing اضطريت اني اشتغل شوية في ال Software Engineering عشان اقدر اطلع ال Malware و اضطريت اني اشتغل اكتر في ال Malware Analysis عشان اقدر اعمل ال Evasion Techniques عشان اخلي ال Malware دة يعدي من ال Antiviurs الموجود مثلاً في الشركة دي
و ال Evasion Techniques دة هتكلم عنها بالتفصيل ازاي بنعملها عشان نعدي من ال Antivirus بس في Part تاني...
طب دلوقتي انا مقدرتش ابعت ال Malware لأي سبب ما يعني بس في مرحلة ال Vulnerability Assessment لقيت ان عندهم مثلاً Server فيه Vulnerability بس يا اما ملهاش Exploit يا اما ال Exploit بتاعها مش Available علي ال Operating System بتاع ال Vulnerability هضطر اني اروح لل Exploitation Development و ال Fuzzing و ال Debugging عشان اقدر اعمل Crafting لـ Exploit مخصوص لل Attack دة
طب دلوقتي ال Exploitation نجح و قدرت ادخل علي Machine بتاعت موظف جوة الشركة ف عايز اجيب ال Password بتاعت الموظف دة و لو ينفع اجيب برضو Password بتاعت حد تاني يبقي كتر خير الدنيا ف أول سيناريو اني بضطر اني ادخل ال Forensics في ال Penetration Testing عشان اعمل Memory Dump و Memory Analysis للجهاز دة و اشوف كل ال Passwords الي دخلت عليه ممكن تكون Password ال Domain Admin عنده في ال memory لسبب ما
ممكن اعمل Service dump و Service analysis ممكن تكون عنده Service بتـ Run تحت ال Domain Admin Account ف يكون فيها ال Password بتاعته
ممكن تكون عنده Service ال SCCM ف لو عملتلها Dump اقدر اجيب Password ال SCCM و هكذا بقي في كدة انا دخلت ال Forensics في ال Penetration Testing
طب لو هو عنده Application مثلاً خاص بالشركة بتاعته نفترض مثلاً انه Application خاص بالحسابات انا ممكن اخد ال Application دة و ادخل ال Reverse Engineering في ال Penetration Testing و اعمل Reverse Engineering علي ال Application دة و اوصل لل Assembly code و ال Machine Code بتاع ال Application دة و اشوف ال Processes و ال Sequence بتاعه ماشي ازاي و ممكن اعمل Injection انه في نص ال Sequence ال Stack Pointer مثلاًَ يروح ينادي علي ال Process بتاعتي او ال Library ال DLL بتاعتي الي هكون عامل فيها Injection لـ Malicious Code او حتي ال Sequence يروح ينادي علي ال Malware بتاعي الي هكون مديله ال Path بتاعه و بعد كدة اعمل Debugging و Compiling تاني و ارجع ال Application زي ما كان و اخلي الناس تستخدمه عادي بعد التعديلات الي انا عملتها و بكدة اكون دخلت ال Reverse Engineering في ال Penetration Testing برضو...
عشان كدة انا بختصر ال Offensive Security كلها في ال Penetration Testing لان ال Scenarios دلوقتي بقت معقدة جداً مبقاش فكرة اني ادخل من Vulnerability لقيتها و ابقي كدة عملت Penetration Testing احنا فيه ساعات بنخترع سيناريو عشان نعمل بيه Penetration Testing ف بنضطر ندخل فيه مجالات تانية زي ال Reverse و ال Exploitation Development و ال Software Engineering و ال Malware Analysis و ال Forensics عشان نقدر ننجح ال Penetration Testing Project دة....
طب رابع سؤال : ايه هي الحاجات الي مش Related لل Security الي هحتاجها في ال Penetration Testing ?!
ال Penetration Testing مش مجرد Hacking و خلاص لا دة الجزء الكبير فيه انك تكون فاهم ال Computer بيشتغل ازاي و ال System نفسه بيعمل ايه ف انت عندك List فيها شوية حاجات كدة لازم تعرفها قبل ما تبدأ في ال Penetration Testing زي :
Information policy
لازم تعرف ال Policy الي ال Information بتمشي فيها في الشركة ايه و في الجهاز الواحد نفسه اصلا ايه..
Security policy
لازم تعرف ال Security Policy بتاعت ال Operating System بتمشي ازاي و ازاي ال Permissions و ال Privileges بتتوظف عشان تحقق ال Security عشان تعرف انت هتدخل منين بالظبط
Computer use
لازم تعرف استخدام كل Computer و لازم تعرف من جوا ال Computer نفسه هو بيعمل ايه و ازاي و امتي و ليه و عن طريق مين
User management
لازم تعرف كويس ال User Controls و ال User Management و كل واحد ايه الحاجات الي مسؤول عنها عشان لو عملت hack علي واحد مسؤول عن x ازاي منه توصل للواحد الي مسؤول عن y
System Administration (SysAdmin) procedures
ايه هو الدور الاساسي لل System Administrator و ايه الفرق بين ال Domain Admin وال Local Admin و ازاي توصل من دة ل دة و ازاي تستخدم ال Communications الي ما بين ال Admins لمصلحتك
Incident response procedures
لازم تعرف ايه هي ال Incident Response Procedures بتاعت ال Target لي انت هتعمل عليه Penetration Testing يعني لما بيعرفوا ان فيه عندهم Attack بيحصل ايه اول حاجة بيفكروا فيها و بعدها بيتصرفوا ازاي عشان تعرف هتكمل ازاي Penetration Testing حتي بعد ما يعرفوا انك جوا ال System
Configuration management
لازم تعرف ال Configuration بتاعت ال System الي هو فيه لأن دة هيسهل عليك كتير جداً لان ساعات ال Hacking كلها بيتم عن طريق Misconfiguration في ال System لا هتحتاج Exploitation ولا Malware ولا اي حاجة عبارة انك تكتشف غلط صغير في ال configuration دة ممكن يدخلك جوا ال System من غير اي تعب.
Design methodology
لازم تكون عارف ال Design Methodology لازم تكون فاهم ال Topology بتاعت ال Environment الي انت داخل عليها خصوصاً لو Black Box لازم تعرف ال Firewall الي قصادك دة وراه ايه و بعد كدة وراه ايه و هكذا لحد ما توصل لل End-Points لازم تعرف هتوصل ازاي لل DMZ و من انهي server و هكذا
Disaster recovery plans
لازم تكون فاهم ال DR Plan بتاعتهم كلمة Disaster recovery دي Plan B بتعملها الشركات و البنوك الكبيرة انهم بيبقوا مجهزين نفس ال System و نفس ال Servers و نفس ال applications بتاعتهم و حاطينهم في حتة اسمها DR Zone كل وظيفتها ان لو حصل اي Hack او ال System وقع او ال Datacenter كلها اتضربت يقوم ال System بتاعنا قايم من ال DR علي طول الموضوع مكلف لانك عشان تعمل DR لازم تضرب كل حاجة في 2 يعني لو عندك Firewall هتخليهم اتنين واحد في ال Production و واحد في ال DR و لو عندك proxy هتخليهم 2 واحد في ال Production و واحد في ال DR و لو عندك Web Server هتخليهم اتنين واحد في ال Production و واحد في ال DR و هكذا بيبقي مكلف اه بس بيبقي Effective جداً خصوصاً في ال Big Corps
دلوقتي انت عندك 3 سكك تمشي فيهم في ال Security كل سكة فيهم ليها كورساتها و شهادتها و مجالاتها و دنيتها لكن الحاجة الوحيدة الي بتتفق عليها الـ 3 سكك دي انك بتحمي المكان الي انت فيه من ال Hackers و ان كل همك تأمين ال 3 حاجات بتوعك الي هما ال Data و ال Network و ال Infrastructure ايان كان ال Data نوعها ايه اياً كان ال Network متوصلة فين اياً كانت ال Infrastructure متخزنة فين :
- أول سكة ليك هي في ال Blue Team يعني هتشتغل Defensive Security و كلمة Defensive Security ترجمتها الحرفية في القاموس (الأمن الدفاعي) بمعني انك هتبقي راجل كل مهمتك تأمين المكان الي انت عن طريق انك عمال تبني حيطة ورا حيطة ورا حيطة ورا حيطة يعني بتامن المكان الي انت فيه عن طريق حاجة اسمها Security Layers كل Layer من ال Layers دة مسؤول عن تأمين جزء معين و ال Layers دي أنواعها كتير فيه منها ال Firewalls الي مسؤول عن تأمين ال Internal Network بتاعتك من الي داخل ليها و الي طالع منها , و فيه عندك ال Web Application Firewall الي هو ال WAF دة بيبقي مسؤول عن تأمين ال Web Applications بتاعتك برضو من ال Input الي داخلها و من ال Output الي هي بتطلعه و , عندك Proxy سواء كان Forward Proxy او Reverse Proxy ف هو الغرض منه برضو تأمين ال Infrastructure بتاعتك سواء لما يكون ال Traffic جايلها او طالع منها ف هو الي بينقل ال Traffic دة بنفسه بال IP بتاعه هو عشان لو حصل اي Attack يحصل عليه هو بس مش ع ال Infrastructure نفسها , و عندك ال UTM دة الي هو Unified Threat Management دة بيبقي جهاز واحد بيشتغل ب أكتر من Module يعني بيبقي فيه Firewall و Antivirus و VPN Gateway و Web Filter و Authentication Management و Proxy و Load Balancer و حاجات تانية كتير....
و فيه من ضمن ال Responsibilities بتاعتك كا Blue Team Member انك تكون كويس في ال IH الي هي ال Incident Handling لأن انت بطبيعة شغلك ف انت ال FRP بتاع الشركة او المكان الي انت فيه...كلمة FRP الي هي First Responder Person يعني انت أول واحد بيتصرف لما بيحصل ال Attack او ال Hack علي الشركة انت اول واحد بترد علي الموضوع دة هي فيه 7 مراحل بتعملهم كا Incident Handler بس مش وقته ان احنا نتكلم فيه بس الفكرة ب اختصار انك بتحاول توقف ال Attack وال Breach و ال Leakage الي بيحصل دة بحيث انك تحاول تقلل الضرر لأقل درجة ممكنة و بعد كدة بيجي بعد ال Forensics Investigator يشوف ايه الي حصل بس ال Investigator بيجي بعد المصيبة ما بتكون حصلت انما انت كا Incident Handler انت الي بتيجي اول المصيبة ما بتحصل....
ما علينا من ال Incident Handling و ال Blue Teaming مش موضوعنا ال Part دة
- تاني سكة انت ممكن تمشي فيها الي هي موضوعنا انهاردة هي سكة ال Red Team الي هي ال Offensive Security و كلمة Offensive Security في القاموس ترجمتها الحرفية هي الأمن العدواني بمعني انك هتكون مسؤول انك هتحاول تكسر كل ال Security Layers الي بناها ال Blue Team و تحاول توصل ال Target بتاعك عن طريق حاجتين يا اما توقع ال Security Layers دة يا اما حاجة تانية انك
تـ Evasion ال Security Layers دي يعني تعدي منها من غير هي ما تاخد بالها تدخل في وسط الناس الي داخلة من غير ما حد يشوفك دة نفس ال Concept الي هتشتغل بيه في ال Red Team
- تالت سكة انت ممكن تمشي فيها بس دي مبتجيش كدة من أول الطريق دي بتيجي بعد ما تكون مشيت في واحدة من السكتين الي فوق دول الي هي سكة ال Purple Team
ايه هو ال Purple Team دة بقي الي هو ال Auditing الي هو بيراقب شغل ال Blue Team و ال Red Team عشان يتأكد ان هما الاتنين عاملين شغلهم صح .
نيجي بقي لتاني سؤال : انا هفترض انك جاوب علي اول سؤال ب انك هتختار سكة ال Offensive Security و ال Red Team و هتمشي فيها ف علي اساس الافتراض دة هنشوف السؤال الي جاي : انا دلوقتي شوفت و انبهرت و عايز ابقي Offensive Engineer ايه بقي المطلوب مني اعمله ؟!
فيه مجلة من اشهر المجلات الموجودة في مجال ال Security اسمها CSOonline
و كلمة CSO معناها Chief Security Officer المهم كان فيها مقالة قبل كدة قرأتها كان فيه واحد اسمه Daniel Cuthbert دة بيشتغل COO الي هو Chief Operating Officer دي من شركات ال CyberSecurity الكبيرة الي بقالها حوالي 17 سنة في ال Market المهم الراجل دة قال Quote كدة بصراحة ممكن تبقي هي احسن Quote انا قراتها في المجلة دي ... الراجل قال :
Red teaming is in vogue this year. Every company and their dog all of a sudden are red team experts
يعني ال Red Teaming و ال Offensive Security بقوا هما موضة السنة و كل شركة فجأة بقت هي و الكلاب بتاعتها (الي هما ال Security Engineer ) بقوا يقولوا علي نفسهم انهم خبراء في مجال ال Red Team او ال Offensive Security .
بالرغم من ان التصريح دة فيه نوع من الغرور الي هو عايز يقولك الناس كلها بقت بتفهم في المجال فجأة الي احنا شغالين فيه بقالنا 17 سنة و كدة بس ف نفس الوقت فيه نوع كبير من الحقيقة و الواقعية و دة لسبب معين :
ان الناس الي شغالين في ال Security كلهم فجاة زهقوا من حتة ال Blue Team و انهم يقعدوا يحطوا في Security Layers كتير ورا بعض و في الاخر ييجي Hacker يقوم كاسر كل الي هما عملوه و يعدي (انا مش بقول ان ال Blue Team ملهمش لازمة بالعكس دة هما لو مش موجودين احنا كمان مش هنكون موجودين انا بقول بس الي هما فكروا فيه) ف كله فجأة قرر يعمل Career Shifting و يحول لل Offensive Security و فعلاً فجأة لقينا شركات كتير طلعت (بتقول) انها شركات Cyber Security و انها شركات Red Teaming و احنا بنشتغل في ال Offensive Security طب جميل جداً الكلام دة نيجي بقي لموضوع سؤالنا دة....فيه ناس كتير من الي عملوا Shifting دول قبل ما يعملوا Shifting مسألوش نفسهم ايه الي احنا محتاجينه عشان نقدر ندخل و ننافس في ال Field دة لأن ال Red Team أصعب بمراحل (من وجهة نظري) من ال blue Team الي انت توقف Body Guards علي الباب اسهل بكتير من انك تحاول تعدي من ال Body Guards دول من غير ما ياخدوا بالهم و ساعات بتضطر انك توقع ال Body Guards كلهم عشان تعدي....
المهم بالنسبة لل Responsibilities الي انت مسؤول عنها كا Red Team Member او كا Offensive Security Engineer هما كتير لكن اكبر و اهم Responsibility فيهم كلهم هي ال Ethical Hacking....
ال Ethical Hacking هو ال Concept قايم عليه كل فكرة ال Offensive Security....طب ايه هو ال Concept دة هو انك بتبقي عندك خزنة مقفولة و انت عارف ان جواها فلوس...ال Ethical Hacking هو انك تحاول بكل الطرق الممكن انك تفتح الخزنة و توصل للفلوس (((بس))) متمدش ايدك ع الفلوس لأ دة انت تكتب Report لأصحاب الخزنة عن الطرق الي انت عملتها عشان يقفلوا الطرق دي عشان لما ييجي الحرامي الي بجد و يحاول يسرق الفلوس يلاقي الطرق مقفولة...سموها Ethical Hacking سموها White Hat Hacking لكن ال Concept دة الوحيد الي بيفرقك عن اي Hacker تاني ممكن يكون شغال Black Hat...
فيه ناس كتير فاكرة ان ال Ethical Hacking دة مجال حد بيتخصص فيه يعني فاكرين ان فيه حاجة اسمها Ethical Hacking Engineer المعلومة دي مش صح 100% لأن ال Ethical Hacking دة عبارة عن Concept تحتيه مجالات كتير كلها داخلة في بعضها لكن الحاجة الي كلنا متفقين عليها ان مفيش حاجة اسمها Ethical Hacking Engineer....
نيجي للسؤال التالت : انا عرفت ال Theoretical Responsibilities الي هكون مسؤول عنها طب ايه هي ال Technical Responsibilities الي هكون مسؤول عنها ؟
انت كا Offensive Engineer او كا Red Team Member بيبقي عليك انواع مختلفة من ال Technical Duties لكن اكبرهم و الي لامم كل حاجة تقريباً هو ال Penetration Testing.....انا في وجهة نظري ان احنا ممكن نختصر كل ال Offensive Security و كل ال RedTeam في ال Penetration Testing لسبب واحد : انك و انت بتعمل Penetration Testing بتضطر تستخدم باقي ال Responsibilities عشان تحقق ال Target بتاعك فيه ناس ممكن تختلف معايا في موضوع اني اختصر ال Offensive في ال Penetration بس مش مهم دة اختلاف اراء مش اكتر لكن هنفضل كلنا متفقين ان احنا في ال Penetration Testing بنستخدم كل حاجة و هشرح ال Scenarios الي بنضطر نستخدم فيها كل حاجة :
ال Penetration Testing بيبقي مقسوم 3 أنواع :
يا اما Black Box يا اما Grey Box يا اما White Box
طبعاً معظم الناس عارفة الفرق ما بينهم و الي مش عارف يقدر يـ Search مش هنضيع وقت في شرحهم دلوقتي...الفكرة بقي ليه بختصر كل ال Offensive Security في ال Penetration Testing لأن مثلاً لما اكون في Project و يكون Black Box يعني انا مش عارف اي حاجة عن ال Target الي انا بعمل عليه Penetration Testing
ف بيبقي قدامي سيناريوهات كتير عشان ابتدي مرحلة ال Exploitation بتاعتي بعد طبعاً ما بخلص ال Information Gathering و ال Reconnaissance و ال Scanning و ال Vulnerability Assessment بيبقي قدامي اني مثلاً اعمل Social Engineering Campaign اني ابعت Spam Campaign للـ Mail List بتاعت الموظفين الي انا جبتها في Phase ال Reconnaissance و ال Spam دة يا اما هحط فيه Malicious Link و يبقي Phishing Campaign يا اما هعمل ال Scenario الي انا عايز اتكلم فيه اني هحط Malware في ال Spam دة
ف هنا عشان اعمل Penetration Testing اضطريت اني اشتغل شوية في ال Software Engineering عشان اقدر اطلع ال Malware و اضطريت اني اشتغل اكتر في ال Malware Analysis عشان اقدر اعمل ال Evasion Techniques عشان اخلي ال Malware دة يعدي من ال Antiviurs الموجود مثلاً في الشركة دي
و ال Evasion Techniques دة هتكلم عنها بالتفصيل ازاي بنعملها عشان نعدي من ال Antivirus بس في Part تاني...
طب دلوقتي انا مقدرتش ابعت ال Malware لأي سبب ما يعني بس في مرحلة ال Vulnerability Assessment لقيت ان عندهم مثلاً Server فيه Vulnerability بس يا اما ملهاش Exploit يا اما ال Exploit بتاعها مش Available علي ال Operating System بتاع ال Vulnerability هضطر اني اروح لل Exploitation Development و ال Fuzzing و ال Debugging عشان اقدر اعمل Crafting لـ Exploit مخصوص لل Attack دة
طب دلوقتي ال Exploitation نجح و قدرت ادخل علي Machine بتاعت موظف جوة الشركة ف عايز اجيب ال Password بتاعت الموظف دة و لو ينفع اجيب برضو Password بتاعت حد تاني يبقي كتر خير الدنيا ف أول سيناريو اني بضطر اني ادخل ال Forensics في ال Penetration Testing عشان اعمل Memory Dump و Memory Analysis للجهاز دة و اشوف كل ال Passwords الي دخلت عليه ممكن تكون Password ال Domain Admin عنده في ال memory لسبب ما
ممكن اعمل Service dump و Service analysis ممكن تكون عنده Service بتـ Run تحت ال Domain Admin Account ف يكون فيها ال Password بتاعته
ممكن تكون عنده Service ال SCCM ف لو عملتلها Dump اقدر اجيب Password ال SCCM و هكذا بقي في كدة انا دخلت ال Forensics في ال Penetration Testing
طب لو هو عنده Application مثلاً خاص بالشركة بتاعته نفترض مثلاً انه Application خاص بالحسابات انا ممكن اخد ال Application دة و ادخل ال Reverse Engineering في ال Penetration Testing و اعمل Reverse Engineering علي ال Application دة و اوصل لل Assembly code و ال Machine Code بتاع ال Application دة و اشوف ال Processes و ال Sequence بتاعه ماشي ازاي و ممكن اعمل Injection انه في نص ال Sequence ال Stack Pointer مثلاًَ يروح ينادي علي ال Process بتاعتي او ال Library ال DLL بتاعتي الي هكون عامل فيها Injection لـ Malicious Code او حتي ال Sequence يروح ينادي علي ال Malware بتاعي الي هكون مديله ال Path بتاعه و بعد كدة اعمل Debugging و Compiling تاني و ارجع ال Application زي ما كان و اخلي الناس تستخدمه عادي بعد التعديلات الي انا عملتها و بكدة اكون دخلت ال Reverse Engineering في ال Penetration Testing برضو...
عشان كدة انا بختصر ال Offensive Security كلها في ال Penetration Testing لان ال Scenarios دلوقتي بقت معقدة جداً مبقاش فكرة اني ادخل من Vulnerability لقيتها و ابقي كدة عملت Penetration Testing احنا فيه ساعات بنخترع سيناريو عشان نعمل بيه Penetration Testing ف بنضطر ندخل فيه مجالات تانية زي ال Reverse و ال Exploitation Development و ال Software Engineering و ال Malware Analysis و ال Forensics عشان نقدر ننجح ال Penetration Testing Project دة....
طب رابع سؤال : ايه هي الحاجات الي مش Related لل Security الي هحتاجها في ال Penetration Testing ?!
ال Penetration Testing مش مجرد Hacking و خلاص لا دة الجزء الكبير فيه انك تكون فاهم ال Computer بيشتغل ازاي و ال System نفسه بيعمل ايه ف انت عندك List فيها شوية حاجات كدة لازم تعرفها قبل ما تبدأ في ال Penetration Testing زي :
Information policy
لازم تعرف ال Policy الي ال Information بتمشي فيها في الشركة ايه و في الجهاز الواحد نفسه اصلا ايه..
Security policy
لازم تعرف ال Security Policy بتاعت ال Operating System بتمشي ازاي و ازاي ال Permissions و ال Privileges بتتوظف عشان تحقق ال Security عشان تعرف انت هتدخل منين بالظبط
Computer use
لازم تعرف استخدام كل Computer و لازم تعرف من جوا ال Computer نفسه هو بيعمل ايه و ازاي و امتي و ليه و عن طريق مين
User management
لازم تعرف كويس ال User Controls و ال User Management و كل واحد ايه الحاجات الي مسؤول عنها عشان لو عملت hack علي واحد مسؤول عن x ازاي منه توصل للواحد الي مسؤول عن y
System Administration (SysAdmin) procedures
ايه هو الدور الاساسي لل System Administrator و ايه الفرق بين ال Domain Admin وال Local Admin و ازاي توصل من دة ل دة و ازاي تستخدم ال Communications الي ما بين ال Admins لمصلحتك
Incident response procedures
لازم تعرف ايه هي ال Incident Response Procedures بتاعت ال Target لي انت هتعمل عليه Penetration Testing يعني لما بيعرفوا ان فيه عندهم Attack بيحصل ايه اول حاجة بيفكروا فيها و بعدها بيتصرفوا ازاي عشان تعرف هتكمل ازاي Penetration Testing حتي بعد ما يعرفوا انك جوا ال System
Configuration management
لازم تعرف ال Configuration بتاعت ال System الي هو فيه لأن دة هيسهل عليك كتير جداً لان ساعات ال Hacking كلها بيتم عن طريق Misconfiguration في ال System لا هتحتاج Exploitation ولا Malware ولا اي حاجة عبارة انك تكتشف غلط صغير في ال configuration دة ممكن يدخلك جوا ال System من غير اي تعب.
Design methodology
لازم تكون عارف ال Design Methodology لازم تكون فاهم ال Topology بتاعت ال Environment الي انت داخل عليها خصوصاً لو Black Box لازم تعرف ال Firewall الي قصادك دة وراه ايه و بعد كدة وراه ايه و هكذا لحد ما توصل لل End-Points لازم تعرف هتوصل ازاي لل DMZ و من انهي server و هكذا
Disaster recovery plans
لازم تكون فاهم ال DR Plan بتاعتهم كلمة Disaster recovery دي Plan B بتعملها الشركات و البنوك الكبيرة انهم بيبقوا مجهزين نفس ال System و نفس ال Servers و نفس ال applications بتاعتهم و حاطينهم في حتة اسمها DR Zone كل وظيفتها ان لو حصل اي Hack او ال System وقع او ال Datacenter كلها اتضربت يقوم ال System بتاعنا قايم من ال DR علي طول الموضوع مكلف لانك عشان تعمل DR لازم تضرب كل حاجة في 2 يعني لو عندك Firewall هتخليهم اتنين واحد في ال Production و واحد في ال DR و لو عندك proxy هتخليهم 2 واحد في ال Production و واحد في ال DR و لو عندك Web Server هتخليهم اتنين واحد في ال Production و واحد في ال DR و هكذا بيبقي مكلف اه بس بيبقي Effective جداً خصوصاً في ال Big Corps