DF-031: كشف البرامج الخفية وعمليات الـ Injection – Memory Forensics: Processes & DLLs
تنويه أمني وإخلاء مسؤولية: هذا المقال مخصص لأغراض التعليم، التوعية الرقمية، والدفاع السيبراني فقط. إن استخدام هذه الأدوات أو الاستراتيجيات خارج إطار مصرح به يُعد مخالفة للقانون. نحن نهدف إلى تمكين الأفراد والمؤسسات من فهم آليات التهديد لحماية أنفسهم.

 للاستزادة والتوسع الأكاديمي: إذا كنت ترغب في إثراء حصيلتك التقنية وقراءة مقالات وتحليلات تفصيلية حول أدوات ومفاهيم هذا الدرس، يمكنك زيارة قسم التحقيق الجنائي الرقمي في مدونة Digital Shield Lab للحصول على شرح معمّق وتطبيقات عمل إضافية.

 

ماذا ستتعلم في هذه الغرفة؟

  • كشف العمليات الخفية (Hidden Processes) عبر مقارنة السلاسل التنفيذية داخل الذاكرة.

  • فحص واستخراج مكتبات الربط الديناميكي (DLLs) المربوطة بكل عملية والتعرف على المريب منها.

  • كشف تقنيات الحقن المباشر (DLL Injection و Reflective DLL Injection).

  • استخدام إضافات Volatility 3 الأساسية: windows.pslist و windows.psscan و windows.pstree و windows.dlllist.

  • مطابقة وتحليل الفروقات بين القوائم المربوطة والهياكل المباشرة في الذاكرة لتحديد التخفي الجنائي.

محتوى الدرس:

تسعى البرمجيات الخبيثة المتقدمة إلى إخفاء وجودها داخل الذاكرة العشوائية عن طريق التلاعب بهياكل بيانات نظام التشغيل (مثل قائمة العمليات ActiveProcessLinks) أو عبر حقن شفراتها داخل مكتبات DLL خاصة بعمليات نظام شرعية.

1. كشف العمليات الخفية (Hidden Process Detection):

  • يحافظ نظام Windows على قائمة بكل العمليات النشطة عبر قائمة متصلة ثنائية (Doubly Linked List).

  • تقنية Unlinking: تتلاعب بعض البرمجيات الخبيثة بهذه القائمة وتفك ارتباطها منها لتختفي من أدوات مثل Task Manager أو الأوامر العادية.

  • الحل الجنائي: مقارنة نتائج إضافة windows.pslist (التي تقرأ القائمة المربوطة) بنتايج إضافة windows.psscan (التي تفحص مساحة الذاكرة بالكامل بحثاً عن هياكل _EPROCESS).

  • أي عملية تظهر في psscan ولا تظهر في pslist هي عملية مخفية مشبوهة فوراً.

2. تحليل مكتبات الـ DLLs الملحقة (DLLs Analysis):

  • تتطلب معظم العمليات مكتبات DLL لكي تعمل.

  • إضافة windows.dlllist: تعرض جميع ملفات الـ DLL المحملة في مساحة العنوان الخاصة بالعملية.

  • مؤشرات الخطر الجنائية في الـ DLLs:

    • وجود مكتبة DLL محملة من مجلدات غير معتادة (مثل C:\Users\...\AppData\ أو C:\Temp\).

    • وجود مكتبات تنتهي بأسماء عشوائية أو غريبة.

    • Reflective DLL Injection: محاولة تحميل الـ DLL مباشرة من الذاكرة دون قراءته من القرص الصلب، وهو ما يترك أثراً يمكن كشفه بعدم وجود مسار قرص صلب مقابل للمكتبة في الذاكرة.

💬 هل واجهتك صعوبة في تطبيق الأوامر أو لديك استفسار إضافي؟ إذا واجهتك أي مشكلة أثناء تنفيذ الخطوات التطبيقية (مثل عدم معرفة المتغيرات الواجب استبدالها في الأوامر البرمجية)، يمكنك طرح سؤالك ومشاركة استفسارك في قسم التحقيق الجنائي الرقمي بمنتديات Digital Shield Lab ليقوم الفريق والمجتمع بمساعدتك خطوة بخطوة.