تحليلات الأمان واسعة النطاق باستخدام دفاتر ملاحظات Microsoft Sentinel وتكامل Azure Synapse (معاينة عامة)

هام

تكامل دفتر ملاحظات Microsoft Sentinel مع Azure Synapse Analytics قيد المعاينة حاليا. تتضمن شروط Azure Preview التكميلية شروطًا قانونية إضافية تنطبق على ميزات Azure الموجودة في الإصدار التجريبي أو المعاينة أو التي لم يتم إصدارها بعد في الإتاحة العامة.

يتيح دمج دفاتر ملاحظات Microsoft Sentinel مع Azure Synapse Analytics تحليلات أمان واسعة النطاق.

في حين أن KQL و Log Analytics هما الأدوات والحلول الأساسية للاستعلام عن البيانات وتحليلها في Microsoft Sentinel ، يوفر Azure Synapse ميزات إضافية لتحليل البيانات الضخمة ، مع الوصول إلى بحيرة البيانات المضمنة ومحرك المعالجة الموزعة Apache Spark.

يوفر التكامل مع Azure Synapse ما يلي:

  • تحليلات البيانات الضخمة الأمنية، باستخدام تجمع الحوسبة Azure Synapse Apache Spark المحسن من حيث التكلفة والمدار بالكامل.

  • الوصول الفعال من حيث التكلفة إلى Data Lake لإنشاء تحليلات على البيانات التاريخية عبر Azure Data Lake Storage Gen2، وهي مجموعة من الإمكانات المخصصة لتحليلات البيانات الضخمة، مبنية على Azure Blob Storage.

  • المرونة في دمج مصادر البيانات في مهام سير عمل العمليات الأمنية من مصادر وتنسيقات متعددة.

  • PySpark ، واجهة برمجة تطبيقات تستند إلى Python لاستخدام إطار Spark مع Python ، مما يقلل من الحاجة إلى تعلم لغة برمجة جديدة إذا كنت معتادا بالفعل على Python.

على سبيل المثال، قد ترغب في استخدام دفاتر الملاحظات مع Azure Synapse للبحث عن السلوكيات الشاذة من سجلات جدار حماية الشبكة للكشف عن إشارات الشبكة المحتملة، أو لتدريب وإنشاء نماذج التعلم الآلي فوق البيانات التي تم جمعها من مساحة عمل Log Analytics.

المتطلبات الأساسية

فهم أجهزة الكمبيوتر المحمولة Microsoft Sentinel

نوصي بالتعرف على دفاتر ملاحظات Microsoft Sentinel بشكل عام قبل تنفيذ الإجراءات الواردة في هذه المقالة.

للبدء، راجع دفاتر ملاحظات Jupyter واستخدمها للبحث عن تهديدات الأمانوالبرنامج التعليمي: ابدأ باستخدام دفاتر ملاحظات Jupyter وMSTICPy في Microsoft Sentinel.

الأدوار والأذونات المطلوبة

لاستخدام Azure Synapse مع دفاتر ملاحظات Microsoft Sentinel، يجب أن يكون لديك الأدوار والأذونات التالية:

النوع التفاصيل
Microsoft Sentinel - دور مساهم Microsoft Sentinel ، من أجل حفظ وتشغيل أجهزة الكمبيوتر المحمولة من Microsoft Sentinel
التعلم الآلي من Azure - دور المالك أو المساهم على مستوى مجموعة الموارد، لإنشاء مساحة عمل التعلم الآلي Azure جديدة إذا لزم الأمر.
- دور مساهم في مساحة عمل Azure التعلم الآلي حيث تقوم بتشغيل دفاتر ملاحظات Microsoft Sentinel.

لمزيد من المعلومات، راجع إدارة الوصول إلى مساحة عمل Azure التعلم الآلي.
Azure Synapse Analytics - دور المالك على مستوى مجموعة الموارد، لإنشاء مساحة عمل Azure Synapse جديدة.
- دور مساهم في مساحة عمل Azure Synapse لتشغيل استعلاماتك.
- دور مساهم Azure Synapse Analytics على Synapse Studio

لمزيد من المعلومات، راجع فهم الأدوار المطلوبة لتنفيذ المهام الشائعة في Synapse.
Azure Data Lake Storage Gen2 - دور مساهم Azure Log Analytics ، لتصدير البيانات من مساحة عمل Log Analytics
- دور مساهم تخزين Azure Blob ، للاستعلام عن البيانات من بحيرة بيانات

لمزيد من المعلومات، راجع تعيين دور Azure.

الاتصال إلى مساحات عمل Azure ML وSynapse

لاستخدام دفاتر ملاحظات Microsoft Sentinel مع Azure Synapse، يجب عليك أولا الاتصال بكل من مساحة عمل Azure التعلم الآلي ومساحة عمل Azure Synapse.

لإنشاء مساحة عمل Azure التعلم الآلي أو الاتصال بها:

تعد مساحات عمل التعلم الآلي من Azure مطلبا أساسيا لاستخدام دفاتر الملاحظات في Microsoft Sentinel.

إذا لم تكن متصلا بالفعل، فراجع استخدام دفاتر ملاحظات Jupyter للبحث عن تهديدات الأمان.

لإنشاء مساحة عمل Azure Synapse جديدة:

في أعلى صفحة دفاتر ملاحظات Microsoft Sentinel، حدد تكوين Azure Synapse، ثم حدد إنشاء مساحة عمل Azure Synapse جديدة.

ملاحظة

Azure Data Lake Storage Gen2 عبارة عن بحيرة بيانات مضمنة تأتي مع كل مساحة عمل Azure Synapse. تأكد من تحديد أو إنشاء بحيرة بيانات جديدة موجودة في نفس المنطقة باستخدام مساحة عمل Microsoft Sentinel. هذا مطلوب عند تصدير بياناتك، كما هو موضح لاحقا في هذه المقالة.

لمزيد من المعلومات، راجع وثائق Azure Synapse.

تكوين تكامل Azure Synapse Analytics الخاص بك

يوفر Microsoft Sentinel دفتر ملاحظات Azure Synapse - Configure Azure ML و Azure Synapse Analytics المضمن لإرشادك خلال التكوينات المطلوبة للتكامل مع Azure Synapse .

ملاحظة

يعد تكوين تكامل Azure Synapse إجراء لمرة واحدة، وتحتاج فقط إلى تشغيل دفتر الملاحظات هذا مرة واحدة لمساحة عمل Microsoft Sentinel.

لتشغيل Azure Synapse - تكوين دفتر ملاحظات Azure ML وAzure Synapse Analytics:

  1. في صفحة دفاتر ملاحظات Microsoft Sentinel ، حدد علامة التبويب قوالب ، وأدخل Synapse في شريط البحث للعثور على دفتر الملاحظات.

  2. حدد موقع Azure Synapse وحدده - تكوين دفتر ملاحظات Azure ML وAzure Synapse Analytics ، ثم حدد قالب دفتر ملاحظات النسخ في أسفل اليسار.

    في جزء دفتر ملاحظات الاستنساخ، قم بتعديل اسم دفتر الملاحظات إذا لزم الأمر، وحدد مساحة عمل Azure التعلم الآلي، ثم حدد حفظ.

  3. بعد نشر دفتر الملاحظات، حدد تشغيل دفتر الملاحظات لفتحه.

    يتم فتح دفتر الملاحظات في مساحة عمل Azure ML، داخل Microsoft Sentinel. لمزيد من المعلومات، راجع تشغيل دفتر ملاحظات في مساحة عمل Azure ML.

  4. قم بتشغيل الخلايا في الخطوات الأولية لدفتر الملاحظات لتحميل مكتبات ووظائف Python المطلوبة والمصادقة على موارد Azure.

  5. قم بتشغيل الخلايا في الخطوة 4، تكوين Azure Synapse Spark Pool، لإنشاء تجمع Azure Synapse Apache Spark جديد لاستخدامه عند تشغيل استعلامات البيانات الكبيرة.

  6. قم بتشغيل الخلايا في الخطوة 5، قم بتكوين مساحة عمل Azure ML والخدمات المرتبطة لضمان إمكانية اتصال مساحة عمل Azure ML بمساحة عمل Azure Synapse. لمزيد من المعلومات، راجع ربط Azure Synapse Analytics وAzure التعلم الآلي مساحات العمل وإرفاق تجمعات Apache Spark.

  7. قم بتشغيل الخلايا في الخطوة 6، تصدير البيانات من Azure Log Analytics إلى Azure Data Lake Storage Gen2، لتصدير بياناتك التي تريد استخدامها للاستعلامات من Azure Log Analytics إلى Azure Data Lake Storage.

بعد أن تصبح بياناتك في Azure Data Lake Storage، تصبح جاهزا لبدء تشغيل استعلامات البيانات الضخمة باستخدام Azure Synapse. لمزيد من المعلومات، راجع تصدير بيانات Log Analytics في Azure Monitor.

البحث عن البيانات التاريخية على نطاق واسع

يوفر Microsoft Sentinel Azure Synapse المدمج - الكشف عن إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark . استخدم دفتر الملاحظات هذا كقالب لسيناريو أمان نموذجي في العالم الحقيقي للبدء في البحث عن البيانات الضخمة باستخدام Microsoft Sentinel وAzure Synapse.

للكشف عن إشارات الشبكة المحتملة باستخدام Microsoft Sentinel وAzure Synapse:

  1. في صفحة دفاتر ملاحظات Microsoft Sentinel ، حدد علامة التبويب قوالب ، وأدخل Synapse في شريط البحث للعثور على دفتر الملاحظات.

  2. حدد موقع Azure Synapse وحدده - اكتشف إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark ، ثم حدد قالب دفتر ملاحظات النسخ في أسفل اليسار.

    في جزء دفتر ملاحظات الاستنساخ، قم بتعديل اسم دفتر الملاحظات إذا لزم الأمر، وحدد مساحة عمل Azure التعلم الآلي، ثم حدد حفظ.

  3. بعد نشر دفتر الملاحظات، حدد تشغيل دفتر الملاحظات لفتحه.

    يتم فتح دفتر الملاحظات في مساحة عمل Azure ML من داخل Microsoft Sentinel. لمزيد من المعلومات، راجع تشغيل دفتر ملاحظات في مساحة عمل Azure ML.

  4. قم بتشغيل الخلايا في الخطوات الأولية لدفتر الملاحظات لتحميل مكتبات ووظائف Python المطلوبة والمصادقة على موارد Azure.

  5. عندما تصل إلى الخلية المسماة بدء جلسة عمل شرارة، قم بتشغيل الخلية لبدء استخدام جلسة عمل Azure Synapse، لاستخدام تجمع Apache Spark كحساب لمهام إعداد البيانات ومشاجرة البيانات بدلا من استخدام حساب Azure ML.

  6. قم بتشغيل الخلايا اللاحقة لتكوين الاستعلامات وتشغيلها على البيانات المخزنة الآن في Azure Data Lake Storage. على سبيل المثال، قم بتحديث فترة البحث لتضمين بيانات من نطاق زمني محدد.

  7. عند الانتهاء من طلب البحث، قم بتصدير النتائج من Azure Data Lake Storage مرة أخرى إلى مساحة عمل Log Analytics.

    التعليمة البرمجية التالية، الموضحة في الخطوة تصدير النتائج من ADLS تحفظ نتائج الاستعلام كملف JSON واحد. حدد اسم الدليل وقم بتشغيل الخلية:

    %%synapse
    dir_name = "<dir-name>"  # specify desired directory name
    new_path = adls_path + dir_name
    csl_beacon_pd = csl_beacon_df.coalesce(1).write.format("json").save(new_path)
    
  8. بعد تصدير بياناتك، يمكنك إيقاف جلسة Spark. بعد إيقاف جلسة عمل Spark، ويتم تشغيل الاستعلامات اللاحقة باستخدام حساب Azure ML الافتراضي المشار إليه في حقل الحوسبة أعلى الصفحة.

    قم بتشغيل الخلية في الخطوة "إيقاف جلسة عمل الشرارة ":

    %synapse stop
    
  9. تصدير ملف JSON مع نتائج الاستعلام من Azure Data Lake Storage إلى نظام ملفات محلي.

    استخدم التعليمة البرمجية في تصدير النتائج من ADLS إلى نظام الملفات المحلي، وقم بتنزيل الملفات من ADLS، وعرض خطوات النتائج لحفظ ملف JSON محليا وعرضها.

  10. بعد حفظ نتائجك محليا، يمكنك إثراؤها ببيانات إضافية وتشغيل المرئيات. على سبيل المثال، يوفر Azure Synapse - الكشف عن إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark خطوات إضافية، لاتخاذ الإجراءات التالية:

    • قم بإثراء النتائج باستخدام عنوان IP GeoLocation و Whois وبيانات استخبارات التهديدات الأخرى ، للحصول على صورة أكثر اكتمالا لسلوكيات الشبكة الشاذة.
    • قم بتشغيل مرئيات MSTICPy لتعيين المواقع أثناء النظر في توزيع اتصالات الشبكة البعيدة أو الأحداث الأخرى.

    يمكن كتابة النتائج مرة أخرى إلى Microsoft Sentinel لمزيد من التحقيق. على سبيل المثال، يمكنك إنشاء حوادث مخصصة أو قوائم مراقبة أو إشارات مرجعية للبحث من النتائج.

    تلميح

    استخدم هذه الخطوات كما هي للكشف عن إشارات الشبكة المحتملة، أو استخدمها كقالب وقم بتعديلها لتلبية احتياجات مؤسستك.

إدارة جلسة Azure Synapse من Microsoft Sentinel

عندما لا تكون في جلسة عمل Azure Synapse، يقوم Microsoft Sentinel افتراضيا بحساب Azure ML المحدد في حقل الحوسبة أعلى صفحة دفاتر الملاحظات .

استخدم التعليمة البرمجية التالية، التي يمكنك نسخها من هنا أو Azure Synapse - اكتشاف إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark، لبدء جلسة عمل Azure Synapse وإيقافها.

بدء جلسة Azure Synapse من داخل Microsoft Sentinel

شَغِّل التعليمات البرمجية التالية:

%synapse start -w $amlworkspace -s $subscription_id -r $resource_group -c $synapse_spark_compute

ابدأ تشغيل كافة خلايا %%synapse التعليمات البرمجية اللاحقة باستخدام جلسة عمل Synapse التي بدأتها.

على سبيل المثال:

%%synapse

# Primary storage info
account_name = '<storage account name>' # fill in your primary account name
container_name = '<container name>' # fill in your container name
subscription_id = '<subscription if>' # fill in your subscription id
resource_group = '<resource group>' # fill in your resource groups for ADLS
workspace_name = '<Microsoft Sentinel/log analytics workspace name>' # fill in your workspace name
device_vendor = "Fortinet"  # Replace your desired network vendor from commonsecuritylogs

# Datetime and lookback parameters
end_date = "<enter date in the format yyyy-MM-dd e.g.2021-09-17>"  # fill in your input date
lookback_days = 21 # fill in lookback days if you want to run it on historical data. make sure you have historical data available in ADLS

تحديد فترة النظر إلى البيانات

يمكن تشغيل استعلامات البيانات الضخمة في نموذج دفتر الملاحظات هذا على بيانات من تاريخ محدد مسبقا، باستخدام المعلمة end-date ، أو نطاق زمني أطول.

على سبيل المثال:

  • إذا كنت مهتما ببيانات من تاريخ محدد، فحدد 15 نوفمبر 2021 كتاريخ حالي، وسيتم تشغيل الاستعلام فقط على البيانات اعتبارا من 15 نوفمبر 2021.

  • لتحديد نطاق زمني أطول للاستعلام، بالإضافة إلى التاريخ الحالي، حدد معلمة معايرة. على سبيل المثال، إذا تم تعيين المعلمة إلى أيام، وتم تعيين المعلمة إلى21، فسينظر الاستعلام lookback_daysend_date إلى 2021-11-17البيانات الخاصة بأيام 21، مع العد مرة أخرى من 17 نوفمبر 2021.

في Azure Synapse - الكشف عن إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark ، ستجد هذه التعليمة البرمجية في خطوة إعداد البيانات.

على سبيل المثال:

# Datetime and lookback parameters
end_date = "2021-11-17>"  # fill in your input date
lookback_days = "21" # fill in lookback days if you want to run it on historical data. Make sure you have historical data available in ADLS

في المثال أعلاه، سيتم تشغيل الاستعلامات على البيانات بين 28 أكتوبر و17 نوفمبر 2021.

إيقاف جلسة Azure Synapse من داخل Microsoft Sentinel

شَغِّل التعليمات البرمجية التالية:

%synapse stop

Switch Azure Synapse workspaces in Microsoft Sentinel

لإدارة مساحة عمل Synapse مختلفة عن المساحة التي قمت بتسجيل الدخول إليها حاليا أو تحديدها، استخدم إحدى الطرق التالية:

  • إذا كنت قد أنشأت بالفعل خدمة مرتبطة بين Azure ML ومساحة عمل Azure Synapse الجديدة:

    1. أدخل اسم المعلمة linkservice في خلية التعليمات البرمجية التالية، ثم أعد تشغيل الخلية والخلايا اللاحقة:

      amlworkspace = "<aml workspace name>"  # fill in your AML workspace name
      subscription_id = "<subscription id>" # fill in your subscription id
      resource_group = '<resource group of AML workspace>' # fill in your resource groups for AML workspace
      linkedservice = '<linked service name>' # fill in your linked service created to connect to synapse workspace
      
    2. تأكد من توفير اسم تجمع Azure Synapse Spark الذي تم تسجيله وإرفاقه بالخدمة المرتبطة:

      synapse_spark_compute = "<synapse spark compute>"
      
  • إذا لم يكن لديك بعد خدمة مرتبطة بين مساحات عمل Azure ML وAzure Synapse، فتأكد من تشغيل Azure Synapse – تكوين دفتر ملاحظات Azure ML وAzure Synapse Analytics لتكوين الخدمة المرتبطة قبل تشغيل Azure Synapse – اكتشاف إشارات الشبكة المحتملة باستخدام دفتر ملاحظات Apache Spark.

الخطوات التالية

لمزيد من المعلومات، انظر: