
- بواسطة x32x01 ||
الـ Exploitation ببساطة هو الأساس اللي قايم عليه مجال الـ Penetration Testing كله، يعني الطريقة اللي بتستغل بيها أي Vulnerability علشان تشوف مدى خطورتها.
الـ Vulnerability بيتحدد مستوى خطورتها على حسب إزاي ممكن تتستغل.
مثلاً:
يعني إيه Exploitation Development؟
الـ Exploitation Development هو فرع متقدم جدًا في عالم الأمن السيبراني، وهدفه إن الباحثين الأمنيين (Security Researchers) يبتكروا طرق استغلال جديدة للثغرات، سواء قديمة أو لسه مكتشفة.
فيه ناس بتبيعها في السوق السودا Black Market زي ما حصل مع ثغرة SMB اللي اتسببت في هجوم WannaCry.
الثغرة دي اتسمّت بعد كده EternalBlue Exploit، وده مثال قوي على إزاي الـ Exploitation Development ممكن يغيّر شكل الهجمات تمامًا.
المهارات التقنية المطلوبة في Exploitation Development
المجال ده مش عادي، وبيحتاج منك شوية صبر ودماغ هندسية تقيلة
، لأن كل اللي فيه بيتعامل على مستوى منخفض جدًا (Low Level).
الـ Shellcode هو كود بسيط جدًا، بس لما يتنفذ على الجهاز، بيديلك Remote Access عليه، يعني بتتحكم في الجهاز عن بُعد.
طب ليه أكتب Exploit بنفسي؟
سؤال حلو!
مع إن في Exploits جاهزة على مواقع زي Exploit-DB أو في Metasploit Framework، إلا إنها بتشتغل على إصدارات محددة من الأنظمة.
مثلاً:
الـ EternalBlue بيشتغل على Windows 7 و Server 2008 بس، طب لو عندك Windows 10؟
ساعتها لازم تعدل الكود بنفسك علشان تشتغل النسخة دي، وده بالضبط اللي بيخلي Exploitation Development مجال مهم جدًا لأي محترف.
الفرق بين Shellcode في Linux وWindows
يعني إيه Buffer Overflow؟
الـ Buffer Overflow بيحصل لما البرنامج يحاول يكتب بيانات أكتر من حجم الذاكرة المسموح بيها.
مثلاً: لو عندك Memory Block مساحته 2KB وعايز تكتب فيه 1MB!
البيانات الزايدة هتكتب فوق القديمة وتبوّظ النظام أو تسبب Crash، وده بيكون مدخل ذهبي للمخترقين علشان يعملوا استغلال ناجح.
التطبيق العملي في Exploitation Development
قبل ما تكتب Exploit جديد، لازم تكون Vulnerability Researcher، يعني تفهم بالضبط:
الـ Code Auditing ببساطة هو إنك تمسك الكود وتراجع التعليمات واحدة واحدة لحد ما تلاقي نقطة الضعف اللي ممكن تدخل منها وتبني عليها الـ Exploit بتاعك.
الـ Vulnerability بيتحدد مستوى خطورتها على حسب إزاي ممكن تتستغل.
مثلاً:
- ثغرة زي SQL Injection خطورتها عالية لأنها بتوصلك للـ Back-End وتقدر تعدل أو تحذف أو تضيف بيانات.
- لكن ثغرات زي TCP Timestamp تعتبر بسيطة جدًا، حتى لو استغلتها مش هتوصلك لحاجة مهمة.
يعني إيه Exploitation Development؟
الـ Exploitation Development هو فرع متقدم جدًا في عالم الأمن السيبراني، وهدفه إن الباحثين الأمنيين (Security Researchers) يبتكروا طرق استغلال جديدة للثغرات، سواء قديمة أو لسه مكتشفة.الثغرات الجديدة (Zero-Day Vulnerabilities)
الثغرات دي لسه مكتشفة حديثًا، ولسه محدش بلغ عنها الشركات (Vendors).فيه ناس بتبيعها في السوق السودا Black Market زي ما حصل مع ثغرة SMB اللي اتسببت في هجوم WannaCry.
الثغرة دي اتسمّت بعد كده EternalBlue Exploit، وده مثال قوي على إزاي الـ Exploitation Development ممكن يغيّر شكل الهجمات تمامًا.
المهارات التقنية المطلوبة في Exploitation Development
المجال ده مش عادي، وبيحتاج منك شوية صبر ودماغ هندسية تقيلة 
المهارة الأولى: لغة Assembly (x86)
لازم تتعلمها كويس جدًا، لأنها أساس التعامل مع النظام على مستوى Kernel مش الـ GUI.المهارة التانية: لغة C
هتحتاجها عشان تكتب وتفهم الكود اللي بيتعامل مباشرة مع الذاكرة والنظام.المهارة التالتة: Shellcoding
وده بقى فن في حد ذاته!الـ Shellcode هو كود بسيط جدًا، بس لما يتنفذ على الجهاز، بيديلك Remote Access عليه، يعني بتتحكم في الجهاز عن بُعد.
طب ليه أكتب Exploit بنفسي؟
سؤال حلو!مع إن في Exploits جاهزة على مواقع زي Exploit-DB أو في Metasploit Framework، إلا إنها بتشتغل على إصدارات محددة من الأنظمة.
مثلاً:
الـ EternalBlue بيشتغل على Windows 7 و Server 2008 بس، طب لو عندك Windows 10؟

ساعتها لازم تعدل الكود بنفسك علشان تشتغل النسخة دي، وده بالضبط اللي بيخلي Exploitation Development مجال مهم جدًا لأي محترف.
الفرق بين Shellcode في Linux وWindows
- في Linux فيه واجهة مباشرة للـ Kernel عن طريق int 0x80.
- في Windows مفيش واجهة مباشرة، لازم تستدعي الـ Function اللي عايزها من ملفات DLL.
علشان كده موضوع الـ DLL Injection خطر جدًا على أنظمة Windows.
يعني إيه Buffer Overflow؟
الـ Buffer Overflow بيحصل لما البرنامج يحاول يكتب بيانات أكتر من حجم الذاكرة المسموح بيها.مثلاً: لو عندك Memory Block مساحته 2KB وعايز تكتب فيه 1MB!

البيانات الزايدة هتكتب فوق القديمة وتبوّظ النظام أو تسبب Crash، وده بيكون مدخل ذهبي للمخترقين علشان يعملوا استغلال ناجح.
التطبيق العملي في Exploitation Development
قبل ما تكتب Exploit جديد، لازم تكون Vulnerability Researcher، يعني تفهم بالضبط:- الثغرة دي بتشتغل إزاي.
- بتأثر في النظام فين.
- وازاي ممكن تستغلها بأمان.
الـ Code Auditing ببساطة هو إنك تمسك الكود وتراجع التعليمات واحدة واحدة لحد ما تلاقي نقطة الضعف اللي ممكن تدخل منها وتبني عليها الـ Exploit بتاعك.
التعديل الأخير: