اخبار سايبر Cybersecurity Newsتطوير البرامج الخبيثة Malware Dev
أخر الأخبار

UUID Shellcode Execution

UUID Shellcode Execution

في يوم 21-10-2021 تمكن فريق بحثي تابع لCheckPoint  من اكتشاف مالوير بخصائص متقدمةيستخدم في حملات اختراق واسعة النطاق لمنظمة إجرامية تسمى Lazarus Group والمثير في هذا المالوير انه يستخدم تقنية لتشغيل الشيل كود عن طريق تخزينه بشكل نصي ك UUID وهذا الشكل من التنفيذ لا يعتبر شائع بين البرمجيات الخبيثة.

Lazarus Group

هي مجموعة قراصنة إلكترونية تتبع  لكوريا الشمالية ترعاها الدولة وقد نُسبت إلى المكتب العام للاستطلاع. كانت المجموعة نشطة منذ عام 2009 على الأقل ، وبحسب ما ورد كانت مسؤولة عن هجوم الممسحة المدمر(destructive wiper attack) في نوفمبر 2014 ضد شركة Sony Pictures Entertainment كجزء من حملة تسمى عملية Blockbuster. ترتبط البرامج الضارة المستخدمة من قبل Lazarus Group بحملات أخرى تم الإبلاغ عنها ، بما في ذلك Operation Flame و Operation 1Mission و Operation Troy و DarkSeoul و Ten Days of Rain

شرح التقنية :-

الأن سنقوم بشرح تقنية وإعادة تطبيقها بشكل عملي لتشغيل الشيل كود مع العلم ان الشرح فقط لأهداف تعليمية .

في البداية فكرة هذه التقنية هي بتحويل ملف شيل كود مولد عن طريق أي أداة او فريمورك الى UUID .

ما هو UUID ؟

هو اختصار ل  Universally unique identifier او  المعرف الفريد عالميًا وهو معرف يستخدم للمعلومات في أنظمة الكمبيوتر. 

ويمكن تمثيله  ب16 ثماني بتات من UUID في شكل 32 رقمًا سداسيًا عشريًا (أساس 16) ، معروضة في خمس مجموعات مفصولة بواصلات 

 مثال:  

01486f74-50d0-8b3e-4818-3e448b402049

بعد ان تعرفنا على الUUID  سننتقل الان للخطوات البرمجية .

  1. بعد توليد الشيل كود نقوم باستخدام أداة مكتوبة بلغة البايثون لتحويل الشيل كود الى هيئة UUID ومن ثم طباعته على الشاشة

2-نقوم بتخزين الناتج بداخل مصفوفة من نوع const char* 

3. حجز مساحة في الذاكرة لنسخ الشيل كود اليها لاحقاً

4. عمل لوب على المصفوفة مع تحويل كل عنصر بالمصفوفة الى صيغته ال Binary عن طريق

استخدام فنكشن UuidFromStringA

5. استخدام أي فنكشن لتنفيذ الشيل كود من داخل مساحة الذاكرة التي قمنا بحجزها في خطوة رقم 3

ويمكنك الان الاطلاع على الكود بشكل كامل .

مع ملاحظة انه يمكن تنفيذ الشيل كود عن طريق أي فنكشن مثل

EnumDesktopsA

EnumChildWindows

EnumSystemLocalesA

وهذه روابط للتعرف اكثر عليها:

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-enumdesktopsa
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-enumchildwindows
https://docs.microsoft.com/en-us/windows/win32/api/winnls/nf-winnls-enumsystemlocalesa

6. النتيجة :

قمنا هنا بطباعة الشيل كود بعد تحويله الى صيغة binary

وتم وصول الاتصال بنجاح:

Mohammed Hassan

باحث في تحليل وتطوير البرامج الخبيثة و الأمن السيبراني ، حاصل على درجة البكالوريوس في هندسة البرمجيات ، ولدي معرفة وخبرة كبيرة في لغات البرمجة مثل #x86 \ x64 IA ، C / C ++ / C ، والتعامل مع Debuggers مثل OllyDbg ، x64dbg ، هدفي هو نقل المعرفة والمهارة إليك بأسهل الطرق.

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى