الكشف عن منح الموافقة غير المشروعة ومعالجتها

تلميح

هل تعلم أنه يمكنك تجربة الميزات في Microsoft Defender XDR Office 365 الخطة 2 مجانا؟ استخدم الإصدار التجريبي Defender لـ Office 365 لمدة 90 يوما في مركز الإصدارات التجريبية لمدخل Microsoft Defender. تعرف على الأشخاص الذين يمكنهم التسجيل وشروط الإصدار التجريبي هنا.

موجز تعرف على كيفية التعرف على هجوم منح الموافقة غير المشروعة ومعالجته في Microsoft 365.

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

تستخدم هذه الهجمات نموذج تفاعل يفترض أن الكيان الذي يستدعي المعلومات هو التشغيل التلقائي وليس الإنسان.

هام

هل تشك في أنك تواجه مشكلات في منح الموافقة غير المشروعة من أحد التطبيقات، الآن؟ يحتوي Microsoft Defender for Cloud Apps على أدوات للكشف عن تطبيقات OAuth الخاصة بك والتحقيق فيها ومعالجتها. تحتوي مقالة Defender for Cloud Apps هذه على برنامج تعليمي يوضح كيفية التحقيق في تطبيقات OAuth الخطرة. يمكنك أيضا تعيين نهج تطبيق OAuth للتحقيق في الأذونات المطلوبة من قبل التطبيق، والتي يقوم المستخدمون بتخويل هذه التطبيقات، والموافقة على طلبات الأذونات هذه أو حظرها على نطاق واسع.

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

خطوات للعثور على علامات هذا الهجوم

  1. افتح مدخل Microsoft Defender في https://security.microsoft.com ثم حدد Audit. أو للانتقال مباشرة إلى صفحة التدقيق، استخدم https://security.microsoft.com/auditlogsearch.

  2. في صفحة Audit، تحقق من تحديد علامة التبويب البحث، ثم قم بتكوين الإعدادات التالية:

    • النطاق الزمني والتاريخ
    • الأنشطة: تحقق من تحديد إظهار النتائج لجميع الأنشطة .

    عند الانتهاء، حدد البحث.

  3. حدد عمود النشاط لفرز النتائج والبحث عن الموافقة على التطبيق.

  4. حدد إدخالا من القائمة للاطلاع على تفاصيل النشاط. تحقق لمعرفة ما إذا تم تعيين IsAdminConsent إلى True.

ملاحظة

قد يستغرق عرض إدخال سجل التدقيق المقابل في نتائج البحث بعد حدوث حدث ما من 30 دقيقة حتى 24 ساعة.

يعتمد طول الوقت الذي يتم فيه الاحتفاظ بسجل التدقيق والبحث فيه في سجل التدقيق على اشتراك Microsoft 365، وتحديدا نوع الترخيص الذي تم تعيينه لمستخدم معين. لمزيد من المعلومات، راجع سجل التدقيق.

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

كيفية تأكيد الهجوم

إذا كان لديك مثيل واحد أو أكثر من IOCs المدرجة مسبقا، فأنت بحاجة إلى إجراء مزيد من التحقيق للتأكد من حدوث الهجوم بشكل إيجابي. يمكنك استخدام أي من هذه الطرق الثلاثة لتأكيد الهجوم:

  • تطبيقات المخزون وأذوناتها باستخدام مركز مسؤولي Microsoft Entra. هذه الطريقة شاملة، ولكن يمكنك فقط التحقق من مستخدم واحد في كل مرة يمكن أن تستغرق وقتا طويلا جدا إذا كان لديك العديد من المستخدمين للتحقق.
  • تطبيقات المخزون وأذوناتها باستخدام PowerShell. هذه هي الطريقة الأسرع والأكثر شمولا، بأقل قدر من النفقات العامة.
  • يجب على المستخدمين التحقق بشكل فردي من تطبيقاتهم وأذوناتهم والإبلاغ عن النتائج مرة أخرى إلى المسؤولين للمعالجة.

تطبيقات المخزون التي لها حق الوصول في مؤسستك

لديك الخيارات التالية لجرد التطبيقات للمستخدمين:

  • مركز مسؤولي Microsoft Entra.
  • Powershell.
  • قم بتعداد المستخدمين بشكل فردي للوصول إلى التطبيق الخاص بهم.

خطوات استخدام مركز مسؤولي Microsoft Entra

يمكنك البحث عن التطبيقات التي منحها أي مستخدم فردي أذونات باستخدام مركز مسؤولي Microsoft Entra:

  1. افتح مركز مسؤولي Microsoft Entra في https://entra.microsoft.com، ثم انتقل إلى Identity>Users> *All users. أو، للانتقال مباشرة إلى المستخدمين>كافة المستخدمين، استخدم https://entra.microsoft.com/#view/Microsoft_AAD_UsersAndTenants/UserManagementMenuBlade/~/AllUsers/menuId/.
  2. ابحث عن المستخدم الذي تريد مراجعته وحدده بالنقر فوق قيمة Display name .
  3. في صفحة تفاصيل المستخدم التي تفتح، حدد التطبيقات.

توضح لك هذه الخطوات التطبيقات التي تم تعيينها للمستخدم والأذونات التي تمتلكها التطبيقات.

خطوات جعل المستخدمين يعدون الوصول إلى التطبيق الخاص بهم

يجب على المستخدمين الانتقال إلى https://myapps.microsoft.com ومراجعة الوصول إلى التطبيق الخاص بهم هناك. يجب أن يكونوا قادرين على رؤية جميع التطبيقات التي لها حق الوصول، وعرض تفاصيل عنها (بما في ذلك نطاق الوصول)، وأن يكونوا قادرين على إبطال الامتيازات للتطبيقات المشبوهة أو غير المشروعة.

الخطوات في PowerShell

أبسط طريقة للتحقق من هجوم منح الموافقة غير المشروعة هي تشغيل Get-AzureADPSPermissions.ps1، والتي تتخلص من جميع منح موافقة OAuth وتطبيقات OAuth لجميع المستخدمين في الإيجار الخاص بك في ملف .csv واحد.

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

  • مكتبة PowerShell Azure AD مثبتة.
  • أذونات المسؤول العام في المؤسسة حيث يتم تشغيل البرنامج النصي.
  • أذونات المسؤول المحلي على الكمبيوتر حيث تقوم بتشغيل البرامج النصية.

هام

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

ملاحظة

من المقرر إيقاف Azure AD Powershell في 30 مارس 2024. لمعرفة المزيد، اقرأ تحديث الإهمال.

نوصي بالترحيل إلى Microsoft Graph PowerShell للتفاعل مع Microsoft Entra ID (المعروف سابقا Azure AD). يسمح Microsoft Graph PowerShell بالوصول إلى جميع واجهات برمجة تطبيقات Microsoft Graph وهو متاح على PowerShell 7. للحصول على إجابات لاستعلامات الترحيل الشائعة، راجع الأسئلة المتداولة حول الترحيل.

  1. سجل الدخول إلى الكمبيوتر حيث تريد تشغيل البرامج النصية مع حقوق المسؤول المحلي.

  2. قم بتنزيل البرنامج النصي Get-AzureADPSPermissions.ps1 أو نسخه من GitHub إلى مجلد يسهل العثور عليه وتذكره. هذا المجلد هو أيضا المكان الذي تحتاج فيه إلى كتابة ملف الإخراج "permissions.csv".

  3. افتح جلسة PowerShell غير مقيدة كمسؤول في المجلد حيث قمت بحفظ البرنامج النصي.

  4. اتصل بالدليل الخاص بك باستخدام الأمر Cmdlet Connect-MgGraph .

  5. قم بتشغيل أمر PowerShell هذا:

    .\Get-AzureADPSPermissions.ps1 | Export-csv -Path "Permissions.csv" -NoTypeInformation
    

ينتج البرنامج النصي ملفا واحدا يسمى Permissions.csv. اتبع هذه الخطوات للبحث عن منح إذن التطبيق غير المشروعة:

  1. في عمود ConsentType (العمود G) ابحث عن القيمة "AllPrinciples". يسمح إذن AllPrincipals لتطبيق العميل بالوصول إلى محتوى الجميع في الإيجار. تحتاج تطبيقات Microsoft 365 الأصلية إلى هذا الإذن للعمل بشكل صحيح. يجب مراجعة كل تطبيق غير تابع ل Microsoft بهذا الإذن بعناية.

  2. في عمود الإذن (العمود F)، راجع الأذونات التي يمتلكها كل تطبيق مفوض للمحتوى. ابحث عن إذن "القراءة" و"الكتابة" أو إذن "الكل"، وراجع هذه الأذونات بعناية، لأنها قد لا تكون مناسبة.

  3. راجع المستخدمين المحددين الذين تم منحهم الموافقات. إذا كان لدى المستخدمين البارزين أو عاليي القيمة موافقات غير مناسبة، فيجب عليك إجراء مزيد من التحقيق.

  4. في العمود ClientDisplayName (العمود C) ابحث عن التطبيقات التي تبدو مريبة. يجب مراجعة التطبيقات التي تحتوي على أسماء بها أخطاء إملائية أو أسماء فائقة أو أسماء سبر المتسللين بعناية.

تحديد نطاق الهجوم

بعد الانتهاء من جرد الوصول إلى التطبيق، راجع سجل التدقيق لتحديد النطاق الكامل للخرق. البحث على المستخدمين المتأثرين، والإطارات الزمنية التي كان للتطبيق غير المشروع الوصول إليها إلى مؤسستك، والأذونات التي يملكها التطبيق. يمكنك البحث في سجل التدقيق في مدخل Microsoft Defender.

هام

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

بعد تحديد التطبيق بأذونات غير مشروعة، لديك عدة طرق لإزالة هذا الوصول:

  • يمكنك إبطال إذن التطبيق في مركز مسؤولي Microsoft Entra عن طريق القيام بالخطوات التالية:

    1. افتح مركز مسؤولي Microsoft Entra في https://entra.microsoft.com، ثم انتقل إلى Identity>Users> *All users. أو، للانتقال مباشرة إلى المستخدمين>كافة المستخدمين، استخدم https://entra.microsoft.com/#view/Microsoft_AAD_UsersAndTenants/UserManagementMenuBlade/~/AllUsers/menuId/.
    2. ابحث عن المستخدم المتأثر وحدده بالنقر فوق قيمة Display name .
    3. في صفحة تفاصيل المستخدم التي تفتح، حدد التطبيقات.
    4. في صفحة التطبيقات ، حدد التطبيق غير المشروع بالنقر فوق قيمة الاسم .
    5. في صفحة تفاصيل الواجب التي تفتح، حدد إزالة.
  • يمكنك إبطال منحة موافقة OAuth باستخدام PowerShell باتباع الخطوات الواردة في Remove-MgOauth2PermissionGrant

  • يمكنك إبطال تعيين دور تطبيق الخدمة باستخدام PowerShell باتباع الخطوات الواردة في Remove-MgServicePrincipalAppRoleAssignment.

  • يمكنك تعطيل تسجيل الدخول للحساب المتأثر، والذي يعطل الوصول إلى البيانات في الحساب بواسطة التطبيق. هذا الإجراء ليس مثاليا لإنتاجية المستخدم، ولكن يمكن أن يكون إصلاحا قصير الأجل للحد بسرعة من نتائج الهجوم.

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

راجع أيضًا