كيف يختلف تحليل السلوك الخاص بالذاكرة (Memory Behavioral Analysis) من Cyber Crucible عن فحص الذاكرة؟
ما هو فحص الذاكرة؟
فحص الذاكرة هو ممارسة أخذ كتلة من الذاكرة، وعادةً ما يتم نسخها إلى موقع مختلف في النظام لغرض التحليل، ثم فحصها لأغراض التحليل.
صورة فوتوغرافية مقابل حدث حي
هذا ليس فحصًا حيًا للبرنامج أثناء عمله، بل هو لقطة زمنية للبرنامج. فكر في الأمر وكأنه صورة فوتوغرافية مقارنة ببث مباشر. قد تختلف حالة البرنامج اختلافًا كبيرًا من لحظة إلى أخرى، لذا فهو الأكثر فائدة كتمرين جنائي في بيئة خاضعة للسيطرة. وهو أقل فائدة في بيئة غير خاضعة للسيطرة، مثل بيئة العميل. فكلما ازدادت مشغولية الجهاز، أو ازداد ما يقوم به البرنامج، ازدادت صعوبة الحصول على صورة دقيقة للحالة الحالية للبرنامج.
بدأت Cyber Crucible باستخدام مكثف لفحص الذاكرة، محاولةً التقاط الكثير من "الصور" لحالات ذاكرة البرامج. ومع ازدياد سرعتنا، واجهنا اختناقات متعددة تتعلق بمدى سرعة أخذ لقطات الذاكرة، وعبر برامج متعددة.
مخاوف استهلاك موارد وحدة المعالجة المركزية (CPU) أو وحدة معالجة الرسومات (GPU)
يمكن أن يكون فحص الذاكرة هذا مستهلكًا للموارد بشكل كبير، وقد يستغرق بعض الوقت بالنسبة للبرامج الكبيرة. عندما كانت Cyber Crucible تستخدم فحص الذاكرة، بدلاً من المراقبة السلوكية الذكية للذاكرة، كان يتم تخصيص نواة معالجة كاملة (CPU core) لعملية الفحص.
تمتلك Intel تقنية مبتكرة تُدعى Intel TDT AMS، وهي متوفرة على معماريات محددة قائمة على معالجات Intel مزودة بوحدة معالجة رسومات (GPU) مدمجة من Intel.
تقوم هذه التقنية بفحص ذاكرة البرنامج عند بدء تشغيله لأول مرة، مستخدمةً وحدة معالجة الرسومات (GPU) للمساعدة على عدم إثقال وحدة المعالجة المركزية (CPU). كما أن وحدة معالجة الرسومات أكثر كفاءة في أداء نوع الفحص الذي يتم تنفيذه (المزيد حول ذلك لاحقًا).
منهجية الفحص
يتم إجراء فحص الذاكرة للبحث عن أكواد أو "سلاسل نصية" (strings) محددة. وغالبًا ما تكون هذه هي نفس أجزاء البيانات التي تبحث عنها أدوات مكافحة الفيروسات/EDR في الملفات التي يُحتمل أن تكون ضارة.
فحص الذاكرة على وجه التحديد أكثر محدودية من بعض عمليات البحث المعقدة التي يمكن إجراؤها على ملف.
لذلك، يبحث الفحص بشكل افتراضي عن عناصر معروفة مسبقًا، مثل البرمجيات الخبيثة القديمة، لكنه محدود في قدرته على القيام بذلك.
كانت Cyber Crucible تقوم سابقًا بفحص أجزاء الذاكرة بحثًا عن مواد تشفيرية، لكن ذلك أثبت محدوديته الشديدة بالنسبة للبيئات الحديثة، فابتكرنا طريقة مختلفة لمراقبة السلوكيات، باستخدام منطق قائم على النواة (kernel-based logic).
المنهجيات القائمة على السلوك مقابل منهجيات الفحص
انتقلت Cyber Crucible من منهجية قائمة على الفحص إلى منهجية قائمة على السلوك لعدة أسباب.
سلبيات الفحص
السبب الأول هو ضرورة استخدام صورة حية عبر جميع البرامج. كانت اللقطات الزمنية صعبة للغاية لإكمال حتى تحليل محدود، قبل أن تكون هناك حاجة إلى لقطة أخرى. كان الكثير من نشاط البرنامج يُفوَّت، تمامًا مثل كاميرا فيديو تعمل بمعدل إطارات منخفض جدًا. وقد تفاقم هذا الأمر مع الحاجة إلى مراقبة جميع البرامج في الوقت نفسه. الخوادم أو محطات العمل المزدحمة، والتي يمكن القول إنها الأجهزة الأكثر حاجة للمراقبة والأكثر أهمية، انتهى بها الأمر بأقل نسبة من المراقبة الفعلية. وبغض النظر عن الشركة أو المنتج، كانت القيود التقنية واضحة وغير عملية.
السبب الثاني هو أن الفحص، بعيدًا عن استهلاك الموارد، يتطلب بشكل افتراضي البحث عن شيء معروف. لذا، يجب أن يكون فحص الذاكرة قائمًا على التوقيعات (signature-based). كذلك، يجب أن يكون فحص التوقيعات هذا مجموعة فرعية محدودة من فحص التوقيعات الأكثر اكتمالًا الموجود في فحص مكافحة الفيروسات القائم على الملفات. لقد تمكن المهاجمون بالفعل من التهرب من دفاعات التوقيعات القائمة على الملفات لسنوات؛ وهناك فرصة ضئيلة جدًا لاكتشاف المهاجمين بواسطة نظام قائم على التوقيعات أقل قدرة.
مزايا التحليل السلوكي
لا تتطلب المراقبة السلوكية للذاكرة من Cyber Crucible توقيعات، وتستفيد من الوصول إلى ذاكرة النواة (kernel memory) لتتبع سلوكيات جميع البرامج في الوقت نفسه. دعونا نفصّل ذلك.
أولاً، تعني المراقبة السلوكية أنه يمكن اكتشاف البرمجيات الخبيثة الجديدة، أو تلك التي عدّلها المهاجمون لتبدو جديدة، بسهولة وفي الوقت الفعلي. يعتمد الفحص القائم على التوقيعات، سواء للذاكرة أو الملفات، على سبق رؤية تلك القطعة المحددة من البرمجيات الخبيثة من قبل. لقد ظل المهاجمون يتهربون من الدفاعات القائمة على التوقيعات لسنوات، على الرغم من وجود مجموعة كاملة من تقنيات الفحص ضد الملفات. أما تقنيات الفحص المتاحة ضد الذاكرة فهي مجموعة فرعية من ذلك، وهي أقل فعالية.
ثانيًا، تتمكن المراقبة السلوكية المبتكرة للذاكرة من Cyber Crucible من البقاء في الوقت الفعلي عبر جميع البرامج في آنٍ واحد، طوال مدة تنفيذ البرامج بالكامل. يعاني فحص الذاكرة من اختناقات شديدة في الموارد تزداد سوءًا مع تشغيل المزيد من البرامج. عادةً ما يقوم المهاجمون بتشغيل العشرات من عينات البرمجيات الخبيثة في وقت واحد، مما يخنق تحليل فحص الذاكرة من خلال سرعة وعدد البرامج التي يجب فحصها في آنٍ واحد، بغض النظر عما إذا كانت برمجية خبيثة جديدة (zero day) أو قديمة.