TLSCheck 2.0: An Enhanced Memory Forensics Approach to Efficiently Detect TLS Callbacks
تقدم هذه الورقة TLSCheck 2.0، وهي إضافة محسنة لبرنامج Volatility 3 تعمل على تطوير التحليل الجنائي للذاكرة من خلال الجمع بين التحليل الدقيق لرؤوس ملفات PE، والتفكيك، ومطابقة الأنماط للكشف بكفاءة عن استدعاءات تخزين الخيوط المحلية (TLS) التي قد تكون ضارة وتحليلها في كل من العمليات ذات 32 بت و64 بت.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
تخيل أن ذاكرة حاسوبك (RAM) تشبه مدينة صاخبة ومؤقتة. عندما تطفئ حاسوبك، تتلاشى هذه المدينة فوراً. التحقيق الجنائي في الذاكرة (Memory Forensics) هو فن أخذ "لقطة" لهذه المدينة وهي لا تزال حية للإمساك بالمجرمين الذين لا يتركون آثار أقدام على الأرض (القرص الصلب) بل يتركونها فقط في الهواء (الذاكرة).
تقدم هذه الورقة أداة جديدة تسمى TLSCheck 2.0، مصممة للإمساك بنوع معين من المجرمين المتسللين الذين يختبئون في هذه المدينة.
المشكلة: "المصافحة السرية" (نداءات TLS)
في نظام التشغيل ويندوز، توجد ميزة تسمى تخزين الخيوط المحلية (Thread Local Storage - TLS). فكر في TLS كأنه "روتين ما قبل المباراة". قبل أن يبدأ برنامج ما (مثل متصفح الويب أو لعبة) عرضه الرئيسي رسمياً، فإنه يقوم بتشغيل قائمة مراجعة صغيرة وخفية.
- الجانب الجيد: تستخدم البرامج المشروعة هذه الميزة لإعداد أدواتها، مثل طباخ يشحذ سكاكينه قبل طهي العشاء.
- الجانب السيئ: البرمجيات الخبيثة (Malware) تحب هذه الميزة. فهي تخفي كودها الشرير داخل روتين "ما قبل المباراة" هذا. ولأن هذا الروتين يعمل قبل أن يبدأ البرنامج الرئيسي، يمكنه نصب الفخاخ، أو إخفاء آثاره، أو مهاجمة النظام قبل أن يلاحظ أحد حتى أن البرنامج الرئيسي قد بدأ العمل.
لفترة طويلة، واجه المحققون الرقميون (المحققون الجنائيون) صعوبة في العثور على هذه الروتينات المخفية. لقد كانوا كمن يبحث عن إبرة في كومة قش، أو والأسوأ من ذلك، كمن يبحث عن إبرة تم تمويهها لتظهر كقطعة من القش.
الحل: TLSCheck 2.0
قام المؤلفان، كارتيك وباراج، ببناء "جهاز كشف معادن" جديد لإطار عمل Volatility (وهو أداة شهيرة يستخدمها المحققون الرقميون). أطلقوا عليه اسم TLSCheck 2.0.
إليك كيف يعمل، باستخدام تشبيهات بسيطة:
1. الرؤية بالأشعة السينية (تحليل رأس ملف PE)
عندما يتم تحميل برنامج ما، يكون لديه "بطاقة هوية" تسمى رأس ملف PE. تقوم أداة TLSCheck بفحص بطاقة الهوية هذه للعثور على قسم "المصافحة السرية" (دليل TLS). هي لا تخمن فحسب؛ بل تقرأ الخريطة لتجد بالضبط أين تُخزن هذه الروتينات المخفية في نسخة الذاكرة (memory dump).
2. المترجم (التفكيك - Disassembly)
بمجرد العثور على الكود المخفي، يظهر كأنه مجرد مجموعة من الأرقام والرموز (لغة الآلة). تعمل TLSCheck كمترجم، حيث تحول هذا اللغو إلى تعليمات مفهومة للبشر (لغة التجميع - assembly language). الأمر يشبه أخذ شفرة سرية مكتوبة بلغة أجنبية وترجمتها إلى الإنجليزية لتتمكن من قراءة التعليمات.
3. جهاز كشف الكذب (مطابقة الأنماط)
هذا هو الجزء الأذكى. الأداة لا تكتفي بإظهار الكود لك؛ بل تقرأه لترى ما إذا كان يتصرف بشكل مريب. إنها تبحث عن "علامات" محددة يستخدمها الأشرار:
- "منزلق NOP": تخيل مجرماً يبني منحدرًا طويلاً من تعليمات "لا تفعل شيئاً" (No Operation) ليتزحلق بكوده داخل النظام. ترصد TLSCheck هذه المنحدرات.
- "باني السلاسل النصية": أحياناً يبني الأشرار كلمات سرية (مثل "حذف النظام") حرفاً بحرف على الـ (stack) حتى لا تتمكن الماسحات الضوئية من رؤية الكلمة كاملة دفعة واحدة. تراقب TLSCheck عملية البناء هذه حرفاً بحرف.
- "المنادي المقنع": غالباً ما يخفي الأشرار الأدوات التي يستخدمونها من خلال القيام بعمليات حسابية (hashing) لاستدعائها. تقوم TLSCheck بحل هذه الرياضيات لتكشف مع من يتحدثون فعلياً.
4. البحث المخصص (YARA & Regex)
تماماً كما يمكنك ضبط مرشح البريد العشوائي الخاص بك للإمساك بكلمات محددة، تتيح TLSCheck للمحققين رفع "ملصقات مطلوب" الخاصة بهم (قواعد YARA) أو مصطلحات بحث مخصصة (Regex). إذا كان المحقق يعرف أن فيروساً معيناً يستخدم خدعة محددة، يمكنه إخبار TLSCheck بالبحث عن تلك الخدعة بدقة.
لماذا هذا مهم؟
في الماضي، كان العثور على هذه الروتينات المخفية يشبه محاولة العثة على كتاب محدد في مكتبة حيث الكتب مكدسة عشوائياً وعناوينها مكتوبة بحبر سري. كان عليك فحص كل صفحة يدوياً.
TLSCheck 2.0 تقوم بأتمتة هذه العملية. فهي:
- تجد الكتب المخفية.
- تفتحها.
- تظلل الصفحات حيث يكتب "الأشرار" خططهم.
- تخبر المحقق بالضبط ما هي الخطة.
النتيجة
اختبر المؤلفون هذه الأداة على برمجيات خبيثة حقيقية (مثل فيروس Ursnif) وفخاخ مصنوعة خصيصاً. ووجدوا أنه بينما تحاول بعض البرمجيات الخبيثة شديدة الدهاء الاختباء لدرجة تجعل حتى هذه الأداة تعاني (تماماً كما قد ينجح لص محترف في فتح قفل)، نجحت TLSCheck 2.0 في تحديد السلوك المريب في حالات كثيرة فشلت فيها الأدوات الأخرى.
باختصار
تقدم هذه الورقة عدسة مكبرة فائقة القوة للمحققين الرقميين. فهي تساعدهم في العثة على وفهم الخدع السرية المبرمجة مسبقاً التي يستخدمها المالوير للاختباء داخل ذاكرة الحاسوب، مما يجعل من الصعب جداً على الأشرار الإفلات من جرائمهم دون أن يتم ملاحظتهم.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.