تطوير البرامج الخبيثة Malware Dev

Code Injection By Installing Hook

Code Injection By Installing Hook

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

ما هو الهوك ؟

 (Windows Events)بحسب مايكروسوفت فان الهوك هو عبارة عن الية لمراقبة أحداث النظام المختلفة  مثل نقرات الماوس او ضغطات لوحة المفاتيح.

ألية العمل :

  يحتوي على الشيل كود الخاص بنا والثاني DLL1-سنقوم بانشاء مشروعين , الأول عبارة عن ملف  

لعمل استيراد للفنكشن الموجود بداخلها الشيل كود.

2-بعدها سنقوم بكتابة فنكشن لتصيب الهوك على النظام.

3- بمجرد الضغط على لوحة المفاتيح داخل أي عملية , سيتم تفعيل الهوك ووصول الاتصال في جلسة meterpreter

الأن سننتقل الى الجانب البرمجي لتطبيق ما قمنا بكتابته :-

  1. أولاً في مشروع ال DLL نقوم بكتابة فنكشن ونضيف لها الكيورد __declspec(dllexport) حتى نستطيع عمل import لها من ملف اخر
  1. نقوم الان بكتابة الشيل كود داخل مصفوفة ونقوم بعمل حجز للذاكرة عن طريق فنكشن VirtualAlloc
  1. نقوم بنسخ الشيل كود الى مساحة الذاكرة التي قمنا بحجزها باستخدام فنكشن memcpy او RtlCopyMemory
  1. نقوم الان بتشغيل الشيل كود بأي طريقة قمنا بتعلمها مسبقاً

الان في مشروع اللودر وهو عبارة عن مشروع من نوع EXE , نقوم بالخطوات التالية :

1-نقوم بعمل لود لملف ال DLL باستخدام فنكشن LoadLibraryA

2- نقوم باستخراج الادرس الخاص بالفنكشن GO باستخدام GetProcAddress

3- نقوم بتنصيب الهوك باستخدام فنكشن SetWindowsHookEx

 للتعرف اكثر :

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowshookexa

4- بعد الانتهاء , يمكننا إزالة الهوك من النظام باستخدام فنكشن UnhookWindowsHookEx

للتعرف اكثر:

https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-unhookwindowshookex

الكود الكامل لمشروع الDLL

الكود الكامل لمشروع الEXE

نلاحظ هنا عند تشغيل اللودر , قام بالفعل باستخراج الادرس الخاص بفنكشن Go الموجودة في ملف ال DLL وسيقوم بالخطوة القادمة بتنصيب الهوك على النظام

ومن ثم , تم وصول الاتصال بنجاح

Mohammed Hassan

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

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

اترك تعليقاً

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

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