يمكن تعريف نمذجة التهديد Threat Modeling على أنه العملية الأمنية الخاصة بتحديد التهديدات المحتملة والعمل على تصنيفها وتحليلها. ويمكن القيام بهذه العملية كإجراء استباقي أثناء التصميم أو التطوير أو كإجراء تفاعلي بعد نشر المنتج. وفي كلتا الحالتين تعمل هذه العملية على الحد من الضرر المحتمل من خلال معرفة الوسائل والطرق اللازمة للقضاء على مصادر التهديدات أو على الأقل التخفيف منها.
في هذه السلسة من المقالات سنتعرف على أمثلة مختلفة لعملية نمذجة التهديد بالإضافة إلى المنهجيات المتبعة للقيام بهذه العملية.
أهداف نمذجة التهديد
من الأفضل للشركات أن تبدأ بهذه العملية في وقت مبكر، أي أثناء تصميم النظام ومن ثم الاستمرار بهذه العملية طوال فترة العمل. على سبيل المثال تستخدم شركة مايكروسوفت عملية تسمى SDL – Security Development Lifecycle. وهي عملية دورة حياة تطوير الحماية من أجل النظر في الأمور الخاصة بالحماية وتطبيقها في كل مرحلة من مراحل تطوير المنتج. وهذا الأمر يسمى Security by Design ويعرف أيضاً ب SD3+C ولهذه العملية هدفان رئيسيان وهما:
- التقليل من العيوب في التصميم والتشفير والأمور الأخرى المتعلقة بالأمان والحماية
- تقليل العيوب ونقاط الضعف الأخرى
بمعنى آخر فإن عملية نمذجة التهديد تحاول التقليل من نقاط الضعف وتقليل تأثير الثغرات. وبالنتيجة التقليل من المخاطر المحتملة.
يتم اتباع نهج استباقي في عملية نمذجة التهديد. يبدأ ذلك في المراحل الأولى لتصميم أو تطوير النظام وتحديداً أثناء إنشاء التصميم والمواصفات الأولية. ويعرف هذا النوع بالنهج الدفاعي. وتعتمد هذه الطريقة على التنبؤ بالتهديدات وتصميم دفاعات محددة أثناء عملية كتابة الكود البرمجي بدلاً من الاعتماد على التحديثات والإصلاحات بعد عملية النشر Deploy. وبشكل عام يعتبر هذا النهج أكثر فاعلية من حيث التكلفة والأداء والحماية.
أنواع نمذجة التهديد
لسوء الحظ لا يمكن التنبؤ بجميع التهديدات خلال مرحلة التصميم. لذلك لا تزال هناك الحاجة إلى نمذجة التهديد بشكل تفاعلي بعد عملية نشر المنتج لمعالجة المشكلات الغير متوقعة. يتم النهج التفاعلي لنمذجة التهديد بعد إنشاء المنتج ونشره ويمكن أن تكون عملية النشر ضمن بيئة اختبار أو في بيئة التشغيل. ويعرف هذا النوع من نمذجة التهديد بالنموذج الهجومي ويعتبر المفهوم الأساسي وراء عمليات الهاكر الأخلاقي واختبار الاختراق ومراجعة الكود المصدري. وعلى الرغم من ان هذه العمليات غالباً ما تكون مفيدة في العثور على العيوب والثغرات ونقاط الضعف التي يجب العمل على إصلاحها إلا انها تتطلب جهداً إضافياً في إعادة كتابة او تعديل الكود البرمجي أو اتخاذ تدابير مضادة جديدة.
قد يؤدي التركيز على الحماية في مرحلة التصميم إلى الحصول على منتجات أفضل على المدى الطويل. ولكن البدء من جديد يعتبر أمر مكلف للغاية ويؤدي لتأخير زمني. وبالتالي فإن الاختصار لهذا الأمر هو الاعتماد على التحديثات أو التصحيحات التي يتم إضافتها للمنتج بعد عملية النشر وهذا الأمر ينتج تحسينات أمنية ولكنها أقل فاعلية.
تحديد التهديدات المحتملة:
من المهم استخدام نهج منظم لتحديد واكتشاف التهديدات المحتملة، على سبيل المثال تستخدم بعض المؤسسات واحداً أو أكثر من الأساليب الثلاثة التالية:
التركيز على الأصول
تعتمد هذه الطريقة على تحديد التهديدات التي من الممكن أن تؤثر على الأصول الأكثر أهمية. على سبيل المثال يمكن تقييم أصل معين لتحديد ما إذا كانت عرضة للهجوم (مثل سيرفر يحوي على بيانات مهمة). عندها يمكن تقييم ضوابط الوصول لتحديد التهديدات التي يمكن أن تعمل على تجاوز المصادقة أو التفويض (الصلاحيات الممنوحة).
التركيز على المهاجمين
تستطيع بعض المنظمات تحديد المهاجمين المحتملين ويمكنها تحديد التهديدات التي يمثلونها بناء على أهداف المهاجم. على سبيل المثال غالباً ما تكون الحكومات قادرة على تحديد المهاجمين المحتملين والتعرف على الأهداف التي يرغبون بالوصول لها. حيث يمكنهم بعد ذلك استخدام هذه المعرفة لتحديد الأصول ذات الصلة التي من الممكن ان يتم مهاجمتها والعمل على حمايتها . ويتمثل التحدي في هذا الأسلوب في ظهور مهاجمين جدد لم يتم اعتبارهم على أنهم تهديد مسبق من قبل.
التركيز على البرامج
عندما تقوم شركة ما بتطوير برنامج معين فيمكنها النظر في التهديدات المحتملة ضد هذا البرنامج. على الرغم من أنه سابقاً كانت معظم الشركات لا تعمل على تطوير برامجها الخاصة داخلياً ولكن التوجه اليوم لاتباع هذا الأسلوب. ومن جهة أخرى تمتلك معظم الشركات وجوداً على الويب وتقوم بإنشاء المواقع الخاصة بها والتي تجذب المزيد من حركة البيانات. وهذا الأمر يتطلب برمجيات أكثر تعقيداً وبالتالي تهديدات إضافية.
عندما يتم تحديد التهديد كمهاجم (على عكس التهديد الطبيعي) فعندها تحاول عملية نمذجة التهديد العمل على تحديد ما يحاول المهاجم تحقيقه. وقد يرغب بعض المهاجمين في تعطيل النظام. بينما البعض الآخر يرغب في سرقة البيانات. وبمجرد تحديد هذه التهديدات يتم تصنيفها بناءاً على الأهداف أو الدوافع. بالإضافة لذلك من الشائع ربط التهديدات بالثغرات الأمنية لتحديد التهديدات التي يمكنها استغلال هذه الثغرات. والهدف النهائي لنمذجة التهديد هو إعطاء الأولوية للتهديدات المحتملة ضد الأصول القيمة في المؤسسة.
في هذا المقال تعرفنا على نمذجة التهديد والطرق المستخدمة لتحديد التهديدات. في المقال القادم سنتعرف على الطرق والتقنيات والأساليب المستخدمة لنمذجة التهديدات. كما سنتعرف على الدليل أو المرجع الذي طورته شركة مايكروسوفت Microsoft لتصنيف التهديدات والمعروف باسم نموذج التهديد STRIDE والذي غالباً ما يتم استخدامه عندما يتعلق الأمر بتقييم التهديدات ضد التطبيقات وأنظمة التشغيل كما يمكن استخدامه في أماكن أخرى.