x32x01
أدارة أكتب كود
- بواسطة x32x01 ||
لو انت هتشتغل في ال offensive security سواء Red Team ، أو حتى لو ضميرك واخد أجازة وهتشتغل Black
فموضوع تخطي الحماية لازم تحطه في أول اهتماماتك ، لأن من غير إجراءات تخطي الحماية انت ممكن تضيع وقت ومجهود كبير في صناعة malware فيه مزايا قوية ، ولكن مافيهوش تقتيات للتخفي وتخطي الحماية
تعالى ياهندسة أقولك على أهم التقنيات اللي بيتم استخدامها عشان نتخطى الحماية بأنواعها
Process Injection وDLL Injection
عشان نحقن الكود في العمليات اللي شغالة في نظام التشغيل وقت تشغيل ال malware .
وهنا بنطبق عمليات رياضية بسيطة على الـ malware بعد فك التشفير.
وده بيمنع برامج الحماية من التعرف عليه بسهولة. التقنيات دي بتعتمد على تغيير control flow في الكود , وده بيخلي برامج الحماية تتلغبط وتحاول تفك شفرته من جديد في كل مرة.
عشان كده لازم نخلي ال malware يتحقق من البيئة اللي هو شغال فيها ، فلو هى بيئة افتراضية VMما يشتغلش وينااااام
ولو على نظام أصلي غير إفتراضي يشتغل ويقوم بوظيفته . ودي وظيفة مهمة جدا مش لازم نتجاهلها .
الكود المكتوب بلغة منخفضة المستوى بيكون أسرع واقرب للغة الآلة ، وده بيخلي التحليل الديناميكي أو الثابت أصعب. كمان، اللغات دي بتسمح بإجراء عمليات منخفضة المستوى بشكل مباشر ، وده يساعدنا في استغلال الثغرات بقوة وفعالية ، وبيساعدنا كمان في تصعيد الصلاحيات والامتيازات.
فموضوع تخطي الحماية لازم تحطه في أول اهتماماتك ، لأن من غير إجراءات تخطي الحماية انت ممكن تضيع وقت ومجهود كبير في صناعة malware فيه مزايا قوية ، ولكن مافيهوش تقتيات للتخفي وتخطي الحماية
تعالى ياهندسة أقولك على أهم التقنيات اللي بيتم استخدامها عشان نتخطى الحماية بأنواعها
التشفير المتقدم Advanced Encryption
التشفير هو أول وأهم خطوة في موضوع تخطي الحماية ، وهنا بنستخدم خوارزميات قوية زي AES (Advanced Encryption Standard) أو RSA (Rivest-Shamir-Adleman) وده بيصعب فك كود ال malware عن طريق برامج الحماية .حقن الكود في الذاكرة Memory Injection
بعد ما نفك التشفير ، نيجي لمرحلة حقن الكود في الذاكرة ، يعني بدل ما الكود يتخزن كملف على الHard Disk ، بنستخدم تقنيات زيProcess Injection وDLL Injection
عشان نحقن الكود في العمليات اللي شغالة في نظام التشغيل وقت تشغيل ال malware .
طيب ازاي بتتم عملية الحقن ؟
بيتم طريق انشاء ctypes في الذاكرة ، وننفذ منه الكود مباشرة. الطريقة دي بتخلي برامج الحماية مش قادرة تكتشف الهجوم، لأنه مش بيظهر على ال Hard Disk.تغيير التوقيع بشكل مستمر Signature Mutation
علشان نتجنب اكتشاف التواقيع الثابتة ، بنستخدم تقنيات Obfuscation أو التعتيم لتغيير الكود بشكل عشوائي.وهنا بنطبق عمليات رياضية بسيطة على الـ malware بعد فك التشفير.
الكود المتغير Polymorphic Code
الفكرة دي قوية جداً لأن الكود المتغير يقدر يعدل من نفسه كل مرة يتنفذ فيها ، وده نفذناه قبل كده في فيروس multi-face Malwareوده بيمنع برامج الحماية من التعرف عليه بسهولة. التقنيات دي بتعتمد على تغيير control flow في الكود , وده بيخلي برامج الحماية تتلغبط وتحاول تفك شفرته من جديد في كل مرة.
التعتيم Code Obfuscation
Code Obfuscation دي تقنية جامدة جداً وهدفها تغيير شكل الكود عشان يبقى من الصعب تحليله. بنستخدم أدوات أو مكتبات بتحول الكود لهيكل معقد ، وده بيخلي اكتشافه عن طريق التحليل الديناميكي أو الثابت صعب. استخدام التعميم بيصعب عملية معرفة وظيفة الكود الأصلي، حتى لو تم فحصهاستغلال العمليات الموجودة Process Hollowing
هنا بنستغل العمليات اللي شغالة بالفعل في نظام التشغيل ، وبنستخدم تقنيات Process Hollowing لإدخال ال Malware داخل عملية نظامية من عمليات النظام ، وده بيخلي الهجوم كأنه جزء من عمليات نظام التشغيل الطبيعية .كشف البيئة الافتراضية Virtual Machine Detection
كتير من برامج الحماية بتشتغل في بيئات افتراضية ، وده عيب كبيرعشان كده لازم نخلي ال malware يتحقق من البيئة اللي هو شغال فيها ، فلو هى بيئة افتراضية VMما يشتغلش وينااااام
ولو على نظام أصلي غير إفتراضي يشتغل ويقوم بوظيفته . ودي وظيفة مهمة جدا مش لازم نتجاهلها .
استخدام لغات منخفضة المستوى Low-Level Languages
استخدام لغات البرمجة منخفضة المستوى زي C و Assembly في رأيي من أهم الإستراتيجيات الفعالة في تخطي الحماية. اللغات دي بتخلينا نتحكم بصورة كاملة في الذاكرة وبنقدر نعمل تفاعل مباشر مع نظام التشغيل. من خلال استخدام pointers وmemory addresses، بنقدر نحقن الMalware مباشرة في عمليات نظام التشغيل الطبيعية ، وده طبعا بيقلل من فرص اكتشافه.الكود المكتوب بلغة منخفضة المستوى بيكون أسرع واقرب للغة الآلة ، وده بيخلي التحليل الديناميكي أو الثابت أصعب. كمان، اللغات دي بتسمح بإجراء عمليات منخفضة المستوى بشكل مباشر ، وده يساعدنا في استغلال الثغرات بقوة وفعالية ، وبيساعدنا كمان في تصعيد الصلاحيات والامتيازات.