أنماط الهجوم
في علوم الحاسوب ، أنماط الهجوم هي مجموعة من الأساليب الصارمة للعثور على الأخطاء أو الثغرات في التعليمات البرمجية المتعلقة بأمن الحاسوب .
تُستخدم أنماط الهجوم غالبًا لأغراض الاختبار، وهي بالغة الأهمية لضمان منع الثغرات الأمنية المحتملة . ويمكن استخدام هذه الأنماط لتسليط الضوء على الجوانب التي تحتاج إلى تحسين أمني في تطبيقات البرمجيات . كما أنها توفر، سواءً بشكل مباشر أو غير مباشر، نموذج الحل الشائع لمنع الهجوم. ويمكن تسمية هذه الممارسة بأنماط البرمجة الدفاعية .
تحدد أنماط الهجوم سلسلة من الخطوات المتكررة التي يمكن تطبيقها لمحاكاة هجوم ضد أمن النظام .
فئات
توجد عدة طرق لتصنيف أنماط الهجوم.
التصنيفات العامة
تُستخدم أنماط الهجوم المعماري لاستهداف الثغرات في التصميم المعماري للنظام، مثل نقاط الضعف في البروتوكولات ، واستراتيجيات المصادقة ، وتجزئة النظام. وتُعتبر هذه الهجمات أقرب إلى الهجمات المنطقية منها إلى هجمات التلاعب بالبتات. ويمكن تصنيف استغلال وقت التحقق مقابل وقت الاستخدام ضمن الثغرات المعمارية.
التحليل والتحقق . تندرج هجمات حقن SQL وهجمات البرمجة النصية عبر المواقع ضمن هذه الفئة.
أمان الذاكرة . في لغات البرمجة غير الآمنة للذاكرة ، يمكن استغلال المشكلات منخفضة المستوى مثل تجاوزات المخزن المؤقت وحالات التزامن للسيطرة الجزئية أو الكاملة على البرنامج.
التزييف والأصدقاء . غالباً ما يستهدفون أسماء نطاقات الويب بهجمات مثل التصيد الاحتيالي والتزييف والاستيلاء على أسماء النطاقات .
هجمات واجهة المستخدم الرسومية . تستهدف هذه الهجمات العناصر الأساسية لواجهة المستخدم الرسومية (GUI): اختطاف النقرات ، واحتجاز الماوس ، وحيل تراكب إطار HTML المضمن .
المضاعفات . الإعلانات الخبيثة ، والهجمات "الفيروسية" التي تنتشر عبر وسائل التواصل الاجتماعي، ونمط "الديدان"، وإعداد قائمة بالأجهزة المضيفة المعرضة للخطر قبل إطلاق دودة.
بفضل التكنولوجيا
هناك طريقة أخرى وهي تجميعها في فئات عامة. كما توجد طريقة أخرى لتصنيف أنماط الهجوم وهي تجميعها حسب تقنية أو نوع تقنية محددة (مثل أنماط هجوم قواعد البيانات، وأنماط هجوم تطبيقات الويب، وأنماط هجوم الشبكات، وما إلى ذلك، أو أنماط هجوم خادم SQL، وأنماط هجوم Oracle، وأنماط هجوم .Net، وأنماط هجوم Java، وما إلى ذلك).
بناء
تتشابه أنماط الهجوم إلى حد كبير في هيكلها مع أنماط التصميم . ويُعدّ استخدام هذا التنسيق مفيدًا لتوحيد عملية تطوير أنماط الهجوم، ويضمن توثيق معلومات محددة حول كل نمط بنفس الطريقة دائمًا.
الهيكل الموصى به لتسجيل أنماط الهجوم هو كما يلي:
- اسم النمط
التسمية التي تُطلق على النمط والتي تُستخدم عادةً للإشارة إلى النمط المعني.
- النوع والأنواع الفرعية
يُساعد نوع النمط وأنواعه الفرعية المرتبطة به في تصنيف النمط. وهذا يُتيح للمستخدمين تحديد مواقع مجموعات الأنماط التي سيتعاملون معها في جهودهم الأمنية بسرعة.
لكل نمط نوع رئيسي، وصفر أو أكثر من الأنواع الفرعية التي تحدد فئة نمط الهجوم. تشمل الأنواع الشائعة هجوم الحقن ، وهجوم حجب الخدمة ، وهجوم تحليل الشفرات ، وما إلى ذلك. ومن أمثلة الأنواع الفرعية الشائعة لهجوم حجب الخدمة: حجب الخدمة - استنزاف الموارد ، وحجب الخدمة - تعطل النظام، وحجب الخدمة - إساءة استخدام السياسات.
من الاستخدامات المهمة الأخرى لهذا المجال ضمان عدم تكرار الأنماط الحقيقية دون داعٍ. فغالبًا ما يسهل الخلط بين استغلال جديد وهجوم جديد. إذ تُستحدث استغلالات جديدة باستمرار لنفس أنماط الهجوم. ويُعد نمط هجوم تجاوز سعة المخزن المؤقت مثالًا جيدًا على ذلك. فهناك العديد من الاستغلالات والفيروسات المعروفة التي تستغل ثغرة تجاوز سعة المخزن المؤقت، لكنها جميعًا تتبع النمط نفسه. لذا، توفر آلية تصنيف النوع والنوع الفرعي طريقة لتصنيف النمط. فإذا لم يكن للنمط الذي تقوم بإنشائه نوع ونوع فرعي فريدان، فمن المرجح أنه استغلال جديد لنمط موجود.
يُستخدم هذا القسم أيضًا لتحديد إمكانية أتمتة الهجوم. إذا كان من الممكن أتمتة الهجوم، يُنصح بتقديم نموذج في قسم "نموذج كود الهجوم" الموضح أدناه.
- يُعرف أيضًا باسم
قد تُعرف بعض الهجمات بأسماء مختلفة. يُستخدم هذا الحقل لإدراج تلك الأسماء الأخرى.
- وصف
هذا وصف للهجوم نفسه، ومصدره المحتمل. وهو في الأساس حقل مفتوح يمكن استخدامه لتسجيل المعلومات التي لا تتناسب بسهولة مع الحقول الأخرى.
- نية المهاجم
يُحدد هذا الحقل النتيجة المرجوة من المهاجم، مُشيرًا إلى هدفه الرئيسي من الهجوم. على سبيل المثال، يهدف هجوم حجب الخدمة (DoS) - استنزاف النطاق الترددي - إلى جعل الموقع الإلكتروني المستهدف غير قابل للوصول إليه من قِبل المستخدمين الشرعيين.
- تحفيز
يسجل هذا الحقل سبب محاولة المهاجم لهذا الهجوم. قد يكون الهدف هو تعطيل النظام لإلحاق ضرر مالي بالمنظمة، أو قد يكون الهدف هو سرقة بيانات حساسة لتحقيق مكاسب مالية للمهاجم.
يختلف هذا الحقل قليلاً عن حقل نية المهاجم من حيث أنه يصف سبب رغبة المهاجم في تحقيق النية المدرجة في حقل نية المهاجم، بدلاً من النتيجة المادية للهجوم.
- ثغرة قابلة للاستغلال
يشير هذا الحقل إلى نوع الثغرة الأمنية التي تُتيح فرصة الهجوم في المقام الأول. على سبيل المثال، في هجوم تجاوز سعة عدد صحيح، لا يتحقق حقل الإدخال من حجم قيمة البيانات الواردة للتأكد من قدرة المتغير المستهدف على استيعابها. هذه هي الثغرة التي يستغلها البرنامج المُخترق لتنفيذ الهجوم.
- مشاركون
المشاركون هم كيان واحد أو أكثر ضروري لنجاح هذا الهجوم. يشمل ذلك أنظمة الضحية، بالإضافة إلى المهاجم وأدواته أو مكونات نظامه. يجب أن يُرفق اسم الكيان بوصف موجز لدوره في الهجوم وكيفية تفاعله مع الكيانات الأخرى.
- مخطط العملية
هذه رسمة أو أكثر توضح الهجوم بصريًا لشرح كيفية تنفيذه. يمكن أن تتخذ هذه الرسمة أي شكل مناسب، ولكن يُنصح بأن تكون مشابهة لرسمة النظام أو رسمة الفئات التي تُظهر تدفقات البيانات والمكونات المعنية.
- التبعيات والشروط
يتطلب كل هجوم سياقًا معينًا وظروفًا تجعله ممكنًا. يصف هذا القسم الشروط المطلوبة والأنظمة أو الظروف الأخرى اللازمة لنجاح الهجوم. على سبيل المثال، لكي يتمكن المهاجم من تنفيذ هجوم تجاوز سعة عدد صحيح، يجب أن يكون لديه إمكانية الوصول إلى التطبيق المُعرَّض للاختراق. وهذا شرط شائع في معظم الهجمات. مع ذلك، إذا لم يظهر الاختراق إلا عند تشغيل الهدف على خادم RPC بعيد، فسيكون هذا أيضًا شرطًا يجب ذكره هنا.
- نموذج لرمز الهجوم
إذا أمكن عرض رمز الاستغلال، يوفر هذا القسم مكانًا لتخزين رمز العرض التوضيحي. في بعض الحالات، مثل هجوم حجب الخدمة، قد لا يكون من الممكن توفير رمز محدد. مع ذلك، في هجمات تجاوز سعة المخزن المؤقت وهجمات البرمجة النصية عبر المواقع ، سيكون وجود نموذج رمز مفيدًا للغاية.
- الثغرات الأمنية الموجودة
يمكن أن تكون عمليات الاستغلال آلية أو يدوية. غالبًا ما توجد عمليات الاستغلال الآلية على شكل فيروسات أو ديدان أو أدوات اختراق. إذا كانت هناك أي ثغرات معروفة للهجوم، فينبغي استخدام هذا القسم لإدراج مرجع لتلك الثغرات. يمكن أن تكون هذه المراجع داخلية، مثل قواعد المعرفة المؤسسية، أو خارجية، مثل قواعد بيانات فرق الاستجابة للطوارئ الحاسوبية (CERT) وقواعد بيانات الفيروسات.
لا ينبغي الخلط بين عمليات الاستغلال والثغرات الأمنية. فعملية الاستغلال هي هجوم آلي أو يدوي يستغل ثغرة أمنية. وهي ليست قائمة بالثغرات الأمنية الموجودة في منتج معين، على سبيل المثال.
- الهجمات اللاحقة
الهجمات اللاحقة هي أي هجمات أخرى قد تُفعَّل من خلال نمط الهجوم هذا. على سبيل المثال، عادةً ما يتبع نمط هجوم تجاوز سعة المخزن المؤقت هجمات تصعيد الامتيازات، أو هجمات التخريب، أو الإعداد لهجمات حصان طروادة/الباب الخلفي. يُعد هذا الحقل مفيدًا بشكل خاص عند البحث في هجوم ما وتحديد الهجمات المحتملة الأخرى التي ربما نُفِّذت أو تم الإعداد لها.
- أنواع التخفيف
تُعدّ أنواع التخفيف من المخاطر استراتيجيات أساسية تُستخدم لمنع نمط الهجوم. ويُشار إليها عادةً بأنماط الأمان وأنماط البرمجة الدفاعية. كما تُستخدم أنواع التخفيف لتصنيف أنماط الهجوم المختلفة. ومن خلال هذا التصنيف، يُمكن تطوير مكتبات لتطبيق أنواع تخفيف محددة، والتي بدورها تُستخدم للتخفيف من مخاطر فئات كاملة من أنماط الهجوم. ويمكن استخدام هذه المكتبات وإعادة استخدامها في مختلف التطبيقات لضمان تغطية متسقة وموثوقة ضد أنواع محددة من الهجمات.
- إجراءات التخفيف الموصى بها
بما أن هذا نمط هجوم، يمكن سرد إجراءات التخفيف الموصى بها هنا بإيجاز. ومن المفترض أن يرشد هذا المستخدم إلى نمط تخفيف أكثر شمولاً لهذا النوع من الهجمات.
- أنماط ذات صلة
سيحتوي هذا القسم على عدة أقسام فرعية مثل الأنماط ذات الصلة، وأنماط التخفيف، وأنماط الأمان، والأنماط المعمارية. تشير هذه إلى أنماط يمكن أن تدعم الهجوم أو ترتبط به أو تخفف من آثاره، ويجب أن يُذكر ذلك في قائمة الأنماط ذات الصلة.
مثال على الأنماط ذات الصلة بنمط هجوم تجاوز سعة الأعداد الصحيحة هو:
أنماط التخفيف – نمط الإدخال المُصفّى، نمط خصائص الدفاع الذاتي
الأنماط ذات الصلة – نمط تجاوز سعة المخزن المؤقت
- التنبيهات والقوائم والمنشورات ذات الصلة
يُدرج هذا القسم جميع المراجع الخاصة بقوائم التنبيهات والمنشورات ذات الصلة، مثل قوائم الثغرات الأمنية الشائعة ( CVDs )، وقائمة CERT، وقائمة SANS، وأي تنبيهات أخرى صادرة عن جهات خارجية. يجب ربط هذه القوائم بمواقع التنبيهات والقوائم الإلكترونية لضمان احتوائها على أحدث المعلومات.
مواقع إخطار البائعين المختلفة.
انظر أيضاً
للمزيد من القراءة
- ألكسندر، كريستوفر؛ إيشيكاوا، سارة؛ وسيلفرشتاين، موراي. لغة الأنماط . نيويورك، نيويورك: مطبعة جامعة أكسفورد ، 1977
- جاما، إي.؛ هيلم، ر.؛ جونسون، ر.؛ وفليسيدس، ج. أنماط التصميم: عناصر البرمجيات القابلة لإعادة الاستخدام والموجهة للكائنات ISBN 0-201-63361-2أديسون -ويسلي ، 1995
- تومسون، هربرت؛ تشيس، سكوت، دليل ثغرات البرمجيات ISBN 1-58450-358-0تشارلز ريفر ميديا، 2005
- جيجيك، مايكل وويليامز، لوري . " مطابقة أنماط الهجوم مع الثغرات الأمنية في تصميمات الأنظمة كثيفة البرمجيات ". ملاحظات هندسة البرمجيات ACM SIGSOFT، وقائع ورشة عمل 2005 حول هندسة البرمجيات للأنظمة الآمنة - بناء تطبيقات جديرة بالثقة SESS '05، المجلد 30، العدد 4، مطبعة ACM ، 2005
- هوارد، م.؛ وليبلانك، د. كتابة التعليمات البرمجية الآمنة ISBN 0-7356-1722-8، مايكروسوفت برس ، 2002.
- مور، أ.ب.؛ إليسون، ر.ج.؛ ولينجر، ر.س.، نمذجة الهجمات لأمن المعلومات وقابلية البقاء ، معهد هندسة البرمجيات ، جامعة كارنيجي ميلون ، 2001
- هوغلوند، غريغ وماكغرو، غاري. استغلال البرمجيات: كيفية اختراق الشفرة (ISBN) 0-201-78695-8أديسون-ويسلي، 2004
- ماكجرو، غاري. أمن البرمجيات: بناء الأمن ( ISBN) 0-321-35670-5أديسون-ويسلي، 2006
- فييغا، جون وماكغرو، غاري. بناء برمجيات آمنة: كيفية تجنب المشاكل الأمنية بالطريقة الصحيحة. رقم ISBN 0-201-72152-Xأديسون-ويسلي، 2001
- شوماخر، ماركوس. فرنانديز بوجليوني، إدواردو؛ هيبرتسون، دوان. بوشمان، فرانك؛ سومرلاد، بيتر أنماط الأمن ISBN 0-470-85884-2جون وايلي وأولاده ، 2006
- كويزول، جاك؛ ليتشفيلد، د.؛ أيتل، د.؛ أنلي، س.؛ إيرين، س.؛ ميهتا، ن.؛ ورايلي، هـ. دليل مبرمج البرمجيات الخبيثة: اكتشاف واستغلال الثغرات الأمنية ISBN 0-7645-4468-3وايلي، 2004
- شناير، بروس. أشجار الهجوم: نمذجة التهديدات الأمنية. مجلة دكتور دوبز، ديسمبر 1999
مراجع
- اختبار البرمجيات
- القرصنة (أمن الحاسوب)
