
يجمع ويحلل سجلات المصادقة الخاصة بـ AD وAzure AD لاكتشاف هجمات الحركة الجانبية باستخدام كشف الشذوذ القائم على الرسم البياني، مع تصور الأنماط المشبوهة عبر خطوط زمنية تفاعلية وصور GIF.
أداة تحليل الحركة الجانبية (LATMA) تقوم بجمع سجلات المصادقة من بيئات الدومين و Azure AD وتبحث عن هجمات الحركة الجانبية المحتملة والنشاط المشبوه. يمكن أن تكون الحركة الجانبية في بيئة AD أو بين السحابة والمحلي. تقوم الأداة بتصور النتائج باستخدام رسوم بيانية توضح أنماط الحركة الجانبية. تحتوي هذه الأداة على وحدتين، واحدة تجمع السجلات والأخرى تحللها. يمكنك تشغيل كل وحدة على حدة، يجب تشغيل جامع سجلات الأحداث على جهاز ويندوز في بيئة دومين Active Directory مع بايثون 3.8 أو أعلى. يمكن تشغيل المحلل على جهاز لينكس أو ويندوز.
يحتوي مُجمع سجلات الأحداث على وظيفتين: فحص وحدات تحكم الدومين بحثًا عن سجلات مصادقة NTLM الناجحة ونقاط النهاية بحثًا عن سجلات مصادقة Kerberos الناجحة، وجمع سجلات تسجيل الدخول من Azure AD. يتطلب جمع السجلات من بيئة AD الوصول إلى منفذ LDAP/S 389 و636 ومنفذ RPC 135 لوحدة تحكم الدومين والعملاء. بالإضافة إلى ذلك، يتطلب امتيازات مسؤول الدومين أو مستخدم في مجموعة قراء سجل الأحداث أو من لديه صلاحيات مكافئة. هذا ضروري لسحب سجلات الأحداث من جميع نقاط النهاية ووحدات تحكم الدومين. لجمع سجلات تسجيل الدخول، تحتاج إلى وجود تطبيق في بيئة Azure-AD الخاصة بك وتوفير المعلومات ذات الصلة في ملف التكوين. تأكد من أن المستخدم المستخدم لجمع سجلات الدخول غير مهيأ بـ 2FA.
يجمع المُجمع سجلات NTLM من الحدث 8004 على وحدات تحكم الدومين وسجلات Kerberos من الحدث 4648 على العملاء. ينتج كخرج ملفًا بتنسيق CSV مفصول بفواصل مع جميع حركة المصادقة المتاحة. يحتوي الخرج على الحقول: المضيف المصدر، الوجهة، اسم المستخدم، نوع المصادقة، SPN، والطوابع الزمنية بتنسيق %Y/%m/%d %H:%M. يتطلب المُجمع بيانات اعتماد مستخدم صالح مع صلاحيات عارض الأحداث عبر البيئة ويستعلم عن السجلات المحددة لكل بروتوكول.
تحقق من تدقيق بروتوكولات Kerberos و NTLM عبر البيئة باستخدام نهج المجموعة:
يجمع المُجمع عمليات تسجيل الدخول الناجحة من الأجهزة المختلطة أو المنضمة إلى Azure AD فقط. تمثل عمليات تسجيل الدخول هذه تحركات ناجحة بين الأصول في بيئة Azure AD والبيئة المحلية أو العكس. يتطلب المُجمع المعلومات التالية لجمع البيانات:
يتلقى المحلل كمدخل جدول بيانات يحتوي على بيانات مصادقة منسقة كما هو محدد في هيكل خرج المُجمع. يبحث عن نشاط مشبوه باستخدام خوارزمية تحليل الحركة الجانبية ويكتشف أيضًا مؤشرات إضافية (IoCs) للحركة الجانبية. يجب أن يكون مصدر المصادقة ووجهتها بصيغة اسم netbios وليس عناوين IP.
تستلم LATMA مجموعة من طلبات المصادقة وترسل تنبيهًا عندما تجد هجمات حركة جانبية مشبوهة. نعرّف ما يلي:
رسم بياني للمصادقة: رسم بياني موجه يحتوي على معلومات حول حركة المصادقة في البيئة. عُقد الرسم البياني هي أجهزة الكمبيوتر، والحواف هي عمليات المصادقة بين أجهزة الكمبيوتر. تحتوي حواف الرسم البياني على السمات: نوع البروتوكول، تاريخ المصادقة، والحساب الذي أرسل الطلب. تحتوي عُقد الرسم البياني على معلومات حول الكمبيوتر الذي تمثله، موضحة أدناه.
رسم بياني للحركة الجانبية: رسم بياني فرعي من رسم المصادقة يمثل حركة المهاجم. ليس دائمًا مسارًا في الرسم البياني الفرعي، ففي بعض الهجمات يذهب المهاجم في اتجاهات مختلفة كثيرة.
تنبيه: رسم بياني فرعي يشتبه الخوارزمية بأنه جزء من رسم الحركة الجانبية.
تقوم LATMA بعدة إجراءات أثناء تنفيذها:
جمع المعلومات: تراقب LATMA السلوك الطبيعي للمستخدمين والأجهزة وتصنفهم. يُستخدم التعلم لاحقًا لتحديد طلبات المصادقة التي تنحرف عن السلوك الطبيعي والتي قد تكون جزءًا من هجوم حركة جانبية. خلال فترة تعلم مدتها ثلاثة أسابيع، لا تصدر LATMA أي تنبيهات وتتعلم البيئة فقط. يستمر التعلم بعد تلك الأسابيع الثلاثة.
بناء رسم المصادقة: بعد فترة التعلم، تُضاف كل مصادقة ذات صلة إلى رسم المصادقة. من المهم تصفية المصادقات ذات الصلة فقط، وإلا قد يصبح عدد الحواف في الرسم كبيرًا جدًا. نصنف على أنواع البروتوكولات التالية: NTLM و Kerberos مع الخدمات "rpc" و "rpcss" و "termsrv".
قد تؤدي إضافة مصادقة إلى الرسم البياني إلى إطلاق عملية تنبيه. بشكل عام، يمكن لحافة جديدة أن تنشئ تنبيهًا جديدًا، أو تنضم إلى تنبيه موجود، أو تدمج تنبيهين.
يُستخدم كل طلب مصادقة تراقبه LATMA للتعلم ويُخزن في بنية بيانات مخصصة. أولاً، نحدد الـ sinks والـ hubs. نعرف الـ sinks كأجهزة يُصل إليها العديد من الحسابات (50 حسابًا مختلفًا على الأقل)، مثل بوابة الشركة أو خادم Exchange. نعرف الـ hubs كأجهزة يصادق منها العديد من الحسابات المختلفة (20 حسابًا على الأقل)، مثل الوكلاء وVPNs. تعتبر المصادقات إلى sinks أو من hubs حميدة وبالتالي تُزال من رسم المصادقة.
بالإضافة إلى التصنيف الأساسي، تقوم LATMA بمطابقة الحسابات مع الأجهزة التي يصادقون منها بشكل متكرر. إذا صادق حساب من جهاز لمدة ثلاثة أيام مختلفة على الأقل في فترة ثلاثة أسابيع، فهذا يعني أن هذا الحساب يطابق الجهاز، وأي مصادقة لهذا الحساب من هذا الجهاز تعتبر حميدة وتُزال من رسم المصادقة.
مؤشرات الحركة الجانبية (IoCs) هي:
White cane - حسابات مستخدمين تصادق من جهاز واحد إلى عدة أجهزة في وقت قصير نسبيًا.
Bridge - حساب مستخدم X يصادق من جهاز A إلى جهاز B، وبعد ذلك، من جهاز B إلى جهاز C. يشير هذا المؤشر محتمل إلى مهاجم يتقدم فعليًا من موطئ القدم الأولي (A) إلى الجهاز الهدف الذي يخدم أهداف الهجوم بشكل أفضل.
Switched Bridge - حساب مستخدم X يصادق من جهاز A إلى جهاز B، يليه حساب مستخدم Y يصادق من جهاز B إلى جهاز C. يشير هذا المؤشر محتمل إلى مهاجم يكتشف حسابًا إضافيًا ويخترقه على طول مساره ويستخدم الحساب الجديد للتقدم إلى الأمام (مثال شائع هو حساب X كمستخدم دومين عادي وحساب Y كمستخدم مسؤول)
Weight Shift - العصا البيضاء (انظر أعلاه) من جهاز A إلى أجهزة {B1,…, Bn}، تليها عصا بيضاء أخرى من جهاز Bx إلى أجهزة {C1,…,Cn}. يشير هذا المؤشر محتمل إلى مهاجم قرر أن الجهاز B سيخدم أغراض الهجوم بشكل أفضل ومن الآن فصاعدًا يستخدم الجهاز B كمصدر لعمليات بحث إضافية.
Blast - حساب مستخدم X يصادق من جهاز A إلى عدة أجهزة في إطار زمني قصير جدًا. مثال شائع هو مهاجم يزرع أو ينفذ برامج فدية على عدد كبير من الأجهزة في وقت واحد
الخرج:
يخرج المحلل عدة ملفات مختلفة
الاستخدام
المُجمع
الوسائط المطلوبة:
استخدام الثنائي افتح موجه الأوامر وانتقل إلى مجلد الثنائي. قم بتشغيل الملفات التنفيذية باستخدام الوسائط المحددة أعلاه.
في ملفات الأمثلة، لديك عدة عينات من بيئات حقيقية (بعضها يحتوي على هجمات حركة جانبية والبعض الآخر لا) يمكنك إعطاؤها كمدخل للمحلل.
مثال استخدام