مبادئ البنية الأمنية
9 قواعد أساسية لتصميم أنظمة آمنة
ما هي البنية الأمنية؟
البنية الأمنية هي النظام الشامل المطلوب لحماية البنية التحتية لتقنية المعلومات في المؤسسة - بما في ذلك مواصفات الأجهزة والبرمجيات، العمليات، والإجراءات المتضمنة في منع وتخفيف والتحقيق في التهديدات. مبادئ البنية الأمنية هي القواعد الأساسية التي يجب تطبيقها عند تصميم وتنفيذ الضوابط الأمنية.
🏗️ الأمن بالتصميم
يجب أن تؤخذ المتطلبات الأمنية في الاعتبار من بداية التطوير - وليس كفكرة لاحقة. بناء الأمن مبكرًا يوفر الوقت والمال والجهد.
✂️ البساطة
قلل التعقيد في الضوابط الأمنية. الأنظمة الأبسط بها أخطاء أقل، وأسهل في الإدارة، ويتم حل المشكلات الأمنية بشكل أسرع.
🧅 الدفاع في العمق
استخدم طبقات متعددة من الأمن. إذا فشل أو تم تجاوز أحد الضوابط، لا تزال الضوابط الأخرى تحمي النظام. لا توجد نقطة فشل واحدة.
🔑 أقل صلاحية
امنح فقط الحد الأدنى من الصلاحيات اللازمة لمستخدم أو عملية للقيام بعملهم. لا أكثر، لا أقل.
🚫 الرفض الافتراضي
الإعداد الافتراضي هو رفض كل الوصول. يجب منح الوصول صراحةً من خلال التكوين. لا شيء مسموح به ما لم يُصرح به على وجه التحديد.
🔒 الفشل الآمن
عند فشل النظام، يجب أن يفشل في حالة آمنة - تمنع الوصول لحماية سلامة البيانات، حتى لو تسبب ذلك في رفض الخدمة.
| الوضع | النتيجة | الخطر |
|---|---|---|
| فشل آمن | الوصول محظور | رفض الخدمة |
| فشل آمن (بديل) | التحكم معطل | وصول غير مشروع |
👥 الفصل بين الواجبات
لا يوجد شخص واحد لديه سيطرة كاملة على معاملة بأكملها. يتم تقسيم المهام أو تظليلها بين عدة أشخاص لمنع الاحتيال.
🌐 لا تثق في الأنظمة الخارجية
الأنظمة الخارجية ليست تحت سيطرة مؤسستك. تعامل معها على أنها غير آمنة افتراضيًا حتى يتم تأسيس الثقة صراحةً من خلال التحقق.
🛡️ الثقة المعدومة (Zero Trust)
لا يُثق بأي فاعل، نظام، أو خدمة - داخل أو خارج الشبكة - افتراضيًا. يجب التحقق من كل تفاعل قبل منح الوصول.
⏳ الأمن هو عملية - وليس منتجًا
كل نظام به ثغرات. الهدف هو الضمان، وليس الكمال. الأنظمة، المتطلبات، وسياقات التهديد تتغير بمرور الوقت. الأنظمة الآمنة تحتاج إلى صيانة مستمرة:
عيوب البنية الأمنية الشائعة
أنواع الهجمات التي تستغل نقاط الضعف في التصميم والبرمجة
📡 القنوات الخفية (Covert Channels)
القناة الخفية هي تقنية هجوم تستخدم لـ نقل المعلومات بطريقة سرية، غير مصرح بها، أو غير مشروعة. يمكن استخدامها لاستخراج معلومات من - أو زرع معلومات في - مؤسسة دون اكتشاف.
🪤 خطاف الصيانة (باب خلفي)
باب خلفي في البرمجيات يسمح للمطورين بالوصول السهل للصيانة - متجاوزًا المصادقة العادية. إذا تُرك في الإنتاج، يصبح ثغرة خطيرة.
🧂 هجوم السلامي (التجميعي)
هجمات صغيرة لا تُكتشف بشكل فردي، لكنها تتراكم لتشكل هجومًا كبيرًا. يُسمى أيضًا الهجوم التدريجي.
✏️ تلاعب بالبيانات (Data Diddling)
تغيير البيانات قبل أو أثناء الإدخال إلى نظام الحاسوب. يتم تغيير البيانات في مرحلة الإدخال، مما يجعل اكتشافها صعبًا بعد ذلك.
👑 برامج مميزة (Privileged Programs)
برامج يمكنها منح المستخدمين صلاحيات إضافية تتجاوز ما تم تعيينه لهم أصلاً - مما يخلق مسارًا لهجمات تصعيد الصلاحيات.
🛠️ كيف تحمي نفسك من هذه العيوب
آليات لضمان أن حالات الفشل لا تعرض التشغيل الآمن للخطر. يعود النظام إلى حالة آمنة معروفة بعد الفشل.
التحقق وتنقية جميع المدخلات قبل معالجتها يمنع التلاعب بالبيانات، هجمات الحقن، والتلاعب بالمعاملات.
تقنيات CIA
ضمان السرية، السلامة، والتوفر
ثالوث CIA في تصميم البرمجيات
يستخدم مصممو البرمجيات تقنيات لضمان أن البرامج تفعل فقط ما هو مطلوب ولا شيء أكثر. عندما تفشل الضوابط: البرامج المتأثرة تهدد السرية → تغييرات غير متوقعة في البيانات تكسر السلامة → تلف البيانات يسبب فقدان التوفر.
🔒 الحصر (Confinement) السرية
حصر العمليات يقيد العملية لتقرأ وتكتب فقط مواقع وموارد ذاكرة محددة. يُستخدم في أنظمة التشغيل لعزل العمليات وحماية الذاكرة.
🔬 عزل العمليات السلامة
عزل العمليات يضمن أن سلوك عملية واحدة سيؤثر فقط على ذاكرتها ومواردها الخاصة. العمليات المنفصلة لا يمكنها التدخل في بعضها البعض.
كل عملية تحصل على مساحة ذاكرة افتراضية خاصة بها. جداول الصفحات منفصلة - لا يمكن لعملية الوصول إلى صفحات ذاكرة عملية أخرى. العناوين الافتراضية لكل عملية تبدأ من 0، لكنها تُرسم إلى مواقع فيزيائية مختلفة.
⭕ الحدود (مستويات الصلاحية) التحكم بالوصول
كل عملية تعمل على النظام تُعطى مستوى صلاحية يخبر نظام التشغيل بما يُسمح للعملية بفعله. نموذج الحلقات يحدد مستويات الصلاحية:
نظرة عامة على نماذج الأمن
أطر لتحديد وتنفيذ السياسات الأمنية
النموذج الأمني هو مخطط لـ تحديد وتنفيذ السياسات الأمنية. قد يعتمد على نموذج رسمي لحقوق الوصول، الحوسبة، الحوسبة الموزعة، أو بدون أساس نظري محدد.
Bell-LaPadula مقابل Biba
النموذجان الأكثر اختبارًا
🔵 نموذج Bell-LaPadula السرية
مصمم لحماية السرية في أنظمة التصنيف العسكرية. يستخدم ترتيبًا خطيًا للمستويات الأمنية.
| المستوى | الموضوع | الكائن |
|---|---|---|
| سري جدًا | تمارا | ملفات الموظفين |
| سري | صموئيل | ملفات البريد الإلكتروني |
| سري (محدود) | كلير | سجلات النشاط |
| غير مصنف | أليس | قوائم الهاتف |
لا تكتب أسفل - لا يمكن لموضوع كتابة بيانات إلى مستوى تصنيف أدنى (يمنع تسريب الأسرار).
❌ كلير (سري محدود) لا يمكنها قراءة ملفات الموظفين أو البريد الإلكتروني.
✅ أليس (غير مصنف) يمكنها فقط قراءة قوائم الهاتف.
🟢 نموذج Biba السلامة
مصمم لحماية سلامة البيانات. الفلسفة المعاكسة لـ Bell-LaPadula - تركز على منع تلوث البيانات عالية السلامة.
لا تقرأ أسفل - لا يمكن لموضوع القراءة من مستوى سلامة أدنى (يمنع التلوث ببيانات غير موثوقة).
| الخاصية | Bell-LaPadula | Biba |
|---|---|---|
| الهدف | السرية | السلامة |
| لا تقرأ | لا تقرأ أعلى (لا تقرأ فوق مستواك) | لا تقرأ أسفل (لا تقرأ تحت مستواك) |
| لا تكتب | لا تكتب أسفل (لا تكتب تحت مستواك) | لا تكتب أعلى (لا تكتب فوق مستواك) |
| حالة الاستخدام | التصنيف العسكري/الحكومي | أنظمة السلامة المالية/قواعد البيانات |
| القيد | لا يعالج السلامة | لا يعالج السرية |
Biba: فكر في طاهٍ - لن يقرأ وصفة من طباخ أقل خبرة (لا تقرأ أسفل = لا تلوث) ولا يمكنه إعادة كتابة كتاب وصفات رئيس الطهاة (لا تكتب أعلى = لا فساد).
مصفوفة التحكم بالوصول
رسم الخرائط بين الفاعلين، الكائنات، وحقوق الوصول
مصفوفة التحكم بالوصول هي جدول يربط الفاعلين (المستخدمين) بـ الكائنات (الموارد) و الحقوق التي يملكها كل فاعل على كل كائن.
| الفاعل \ الكائن | ملف 1 | ملف 2 | ملف 3 | ملف 4 | حساب 1 | حساب 2 |
|---|---|---|---|---|---|---|
| جون | ملكية، قراءة، كتابة | - | ملكية، قراءة، كتابة | - | استعلام، إيداع | - |
| أليس | قراءة | ملكية، قراءة، كتابة | كتابة | قراءة | استعلام، سحب | استعلام، إيداع |
| بوب | قراءة، كتابة | قراءة | - | ملكية، قراءة، كتابة | - | استعلام، سحب |
إذا نظرت إلى صف "أليس" (قائمة صلاحياتها): ملف 1 (قراءة)، ملف 2 (ملكية،قراءة،كتابة)، ملف 3 (كتابة)، ملف 4 (قراءة)، حساب 1 (استعلام، سحب)، حساب 2 (استعلام، إيداع) - هذه كل الأشياء التي يمكن لأليس فعلها.
نموذج Take-Grant
تتبع كيفية انتشار الحقوق عبر النظام
نموذج Take-Grant يحدد كيف يمكن تمرير الحقوق بين الفاعلين. يُستخدم لتحديد متى يمكن أن تتغير الحقوق وأين يحدث تسريب الصلاحيات.
| القاعدة | الوصف | الترميز |
|---|---|---|
| قاعدة الأخذ (Take) | تسمح لفاعل بأخذ حقوق على كائن من فاعل آخر | "x يأخذ (α إلى z) من y" |
| قاعدة المنح (Grant) | تسمح لفاعل بمنح حقوق على كائن لفاعل آخر | "x يمنح (α إلى z) إلى y" |
| قاعدة الإنشاء (Create) | تسمح لفاعل بإنشاء حقوق جديدة | "x-ينشئ-(α-إلى)-{فاعل/كائن}-جديد-n" |
| قاعدة الإزالة (Remove) | تسمح لفاعل بإزالة حقوق يملكها | "x يزيل (α إلى) y" |