الشروع في استخدام Threat Modeling Tool

تم إصدار أداة Microsoft Threat Modeling Tool 2018 باسم GA في سبتمبر 2018 باعتبارها قابلة للتنزيل بمجرد النقر ومجانية. يسمح لنا التغيير في آلية التسليم بدفع أحدث التحسينات وإصلاحات الأخطاء للعملاء في كل مرة يفتحون فيها الأداة، ما يسهل صيانتها واستخدامها. تأخذك هذه المقالة خلال عملية البدء في نهج نمذجة التهديدات Microsoft SDL وتوضح لك كيفية استخدام الأداة لتطوير نماذج التهديدات الكبيرة باعتبارها العمود الفقري لعملية الأمان الخاصة بك.

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

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

SDL Process

بدء عملية نمذجة التهديد

عند تشغيل Threat Modeling Tool، ستلاحظ بعض الأشياء، كما هو موضح في الصورة:

Blank Start Page

قسم نموذج التهديد

المكون التفاصيل
زر التعليقات والاقتراحات والمشكلات يأخذك إلى منتدى MSDN لكل ما يتعلق بـ SDL. يمنحك فرصة لقراءة ما يفعله المستخدمون الآخرون، إلى جانب الحلول والتوصيات. إذا كنت لا تزال غير قادر على العثور على ما تبحث عنه، فقم بإرسال بريد إلكتروني إلى tmtextsupport@microsoft.com لفريق الدعم لدينا لمساعدتك
إنشاء نموذج يفتح لك لوحة قماشية فارغة لرسم مخططك. تأكد من تحديد القالب الذي ترغب في استخدامه للقالب الخاص بك
قالب للنماذج الجديدة يجب تحديد القالب الذي تريد استخدامه قبل إنشاء قالب. قالبنا الرئيسي هو قالب التهديد Azure، والذي يحتوي على قوالب stencil وتهديدات وعمليات تخفيف خاصة بـ Azure. بالنسبة للنماذج العامة، حدد SDL TM Knowledge Base من القائمة المنسدلة. هل تريد إنشاء قالب خاص بك أو إرسال قالب جديد لجميع المستخدمين؟ تحقق من صفحة على GitHub لمعرفة المزيد
فتح نموذج

يفتح نماذج التهديد المحفوظة مسبقاً. تعد ميزة Recently Opened Models رائعة إذا كنت بحاجة إلى فتح أحدث ملفاتك. عندما تحوم فوق التحديد، ستجد طريقتين لفتح النماذج:

  • فتح من هذا الكمبيوتر - طريقة تقليدية لفتح ملف باستخدام التخزين المحلي
  • فتح من OneDrive - يمكن للفرق استخدام المجلدات في OneDrive لحفظ جميع نماذج التهديدات ومشاركتها في موقع واحد للمساعدة في زيادة الإنتاجية والتعاون

دليل الخطوات الأولى يفتح الصفحة الرئيسية Threat Modeling Tool لـ Microsoft

قسم القالب

المكون التفاصيل
إنشاء قالب جديد يفتح قالباً فارغاً لك للبناء عليه. ما لم تكن لديك معرفة واسعة في إنشاء القوالب من البداية، نوصيك بالبناء من القوالب الحالية
فتح القالب يفتح القوالب الموجودة لك لإجراء تغييرات عليها

يعمل فريق Threat Modeling Tool باستمرار على تحسين وظائف الأداة وتجربتها. قد تحدث بعض التغييرات الطفيفة على مدار العام، ولكن تتطلب جميع التغييرات الرئيسية إعادة كتابة في الدليل. ارجع إليه كثيراً للتأكد من حصولك على أحدث الإعلانات.

بناء نموذج

في هذا القسم نتابع:

  • كريستينا (مطور)
  • ريكاردو (مدير برنامج) و
  • أشيش (اختبار)

إنهم يمرون بعملية تطوير نموذج التهديد الأول لديهم.

ريكاردو: مرحباً كريستينا، لقد عملت على مخطط نموذج التهديد وأردت التأكد من أننا حصلنا على التفاصيل بشكل صحيح. هل يمكنك مساعدتي في البحث عنها؟ كريستينا: بالتأكيد. لنلقي نظرة. يفتح ريكاردو الأداة ويشارك شاشته مع كريستينا.

Basic Threat Model

كريستينا: حسناً، يبدو واضحاً، لكن هل يمكنك إرشادي من خلاله؟ ريكاردو: بالتأكيد! هنا هو الانهيار:

  • يتم رسم مستخدمنا البشري ككيان خارجي - مربع
  • إنهم يرسلون أوامر إلى خادم الويب لدينا - الدائرة
  • خادم الويب يستشير قاعدة بيانات (خطان متوازيان)

ما أظهره ريكاردو للتو لكريستينا هو DFD، وهو اختصار لـ مخطط تدفق البيانات . تتيح Threat Modeling Tool للمستخدمين تحديد حدود الثقة، المشار إليها بالخطوط المنقطة الحمراء، لإظهار مكان سيطرة الكيانات المختلفة. على سبيل المثال، يطلب مسؤولو تكنولوجيا المعلومات نظام Active Directory لأغراض المصادقة، وبالتالي فإن Active Directory خارج عن سيطرتهم.

كريستينا: يبدو صحيحاً بالنسبة لي. ماذا عن التهديدات؟ ريكاردو: دعني أريك.

تحليل التهديدات

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

يشبه هذا النهج تأمين منزلك من خلال التأكد من أن كل باب ونافذة به آلية قفل في مكانه قبل إضافة نظام إنذار أو مطاردة اللص.

Basic Threats

يبدأ ريكاردو باختيار العنصر الأول في القائمة. إليك ما يحدث:

أولاً، تم تحسين التفاعل بين الإستنسلين

Screenshot shows two stencils and the curved arrow connecting them in a heavier weight of line.

ثانياً، تظهر معلومات إضافية بشأن التهديد في نافذة خصائص التهديد

Screenshot shows the Threat Properties window, which contains Title, Category, Description, Interaction, and Priority.

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

تحتوي قوالب Azure على تفاصيل إضافية لمساعدة المستخدمين على فهم ليس فقط الخطأ، ولكن أيضاً كيفية إصلاحه عن طريق إضافة الأوصاف والأمثلة والارتباطات التشعبية إلى الوثائق الخاصة بـ Azure.

جعله الوصف يدرك أهمية إضافة آلية مصادقة لمنع المستخدمين من الانتحال، وكشف التهديد الأول الذي يجب العمل عليه. بعد دقائق قليلة من المناقشة مع كريستينا، فهموا أهمية تنفيذ التحكم في الوصول والأدوار. قام ريكاردو بملء بعض الملاحظات السريعة للتأكد من تنفيذها.

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

يمكن تغيير التهديدات التي لا تنطبق على التصميم بسبب عوامل التخفيف الموجودة أو ضمانات الأمان إلى "غير قابل للتطبيق" من قائمة الحالة المنسدلة. هناك ثلاثة خيارات أخرى: لم يتم البدء - التحديد الافتراضي، يحتاج إلى التحقيق - يُستخدم لمتابعة العناصر والتخفيف - بمجرد العمل عليه بالكامل.

التقارير والمشاركة

بمجرد أن يتصفح ريكاردو القائمة مع كريستينا ويضيف ملاحظات مهمة، وعمليات التخفيف/التبريرات، والأولوية وتغييرات الحالة، يقوم بتحديد التقارير - > إنشاء تقرير كامل - > حفظ التقرير، الذي يطبع تقريراً رائعاً ليطلع عليه مع الزملاء لضمان تنفيذ العمل الأمني ​​المناسب.

Screenshot shows a representative Threat Modeling Report.

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

اجتماعات نمذجة التهديد

عندما أرسل ريكاردو نموذج التهديد الخاص به إلى زميله باستخدام OneDrive، كان Ashish، المختبِر، محبطاً. يبدو أن ريكاردو وكريستينا قد فاتهما عدداً لا بأس به من حالات الركن المهمة، والتي يمكن اختراقها بسهولة. تشككه هو مكمل لنماذج التهديد.

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

في الاجتماع الأول، أمضى Ashish 10 دقائق في تجريب الجميع خلال عملية نمذجة التهديد SDL. ثم قام بسحب مخطط نموذج التهديد وبدأ في شرحه بالتفصيل. في غضون خمس دقائق، تم تحديد عنصر مهم مفقود.

بعد بضع دقائق، دخل آشيش وريكاردو في مناقشة مطولة بشأن كيفية بناء خادم الويب. لم تكن هذه هي الطريقة المثالية لاستمرار الاجتماع، ولكن اتفق الجميع في النهاية على أن اكتشاف التناقض مبكراً سيوفر لهم الوقت في المستقبل.

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

التفكير في الأصول

قد يلاحظ بعض القراء الذين وضعوا نموذج التهديد أننا لم نتحدث عن الأصول على الإطلاق. لقد اكتشفنا أن العديد من مهندسي البرمجيات يفهمون برامجهم بشكل أفضل من فهمهم لمفهوم الأصول والأصول التي قد يهتم بها المهاجم.

إذا كنت ستهدد نموذجاً لمنزل، فقد تبدأ بالتفكير في عائلتك أو الصور التي لا يمكن تعويضها أو الأعمال الفنية القيمة. ربما تبدأ بالتفكير في من قد يقتحم ونظام الأمان الحالي. أو قد تبدأ بالتفكير في السمات المادية، مثل المسبح أو الشرفة الأمامية. هذه مماثلة للتفكير في الأصول أو المهاجمين أو تصميم البرامج. أي من هذه الأساليب الثلاثة تعمل.

إن نهج نمذجة التهديد الذي قدمناه هنا أبسط إلى حد كبير مما فعلته Microsoft في الماضي. وجدنا أن نهج تصميم البرنامج يعمل جيداً للعديد من الفرق. نأمل أن يشمل ذلك لك.

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

أرسل أسئلتك وتعليقاتك ومخاوفك إلى tmtextsupport@microsoft.com. تحميلThreat Modeling Tool للبدء.