ما هي الممارسات الأكثر أهمية؟
ابدأ بالصور الأساسية البسيطة والموثوقة
استخدم الصور الأساسية التي يتم صيانتها جيدًا والتي تتضمن فقط الحزم والمكتبات والأدوات المساعدة التي يحتاجها التطبيق. هذا يقلل من سطح الهجوم ويجعل الترقيع أسهل.
فحص الصور والتبعيات قبل النشر
يجب أن يحدد الفحص نقاط الضعف المعروفة ، ويكشف عن المعلومات السرية والتكوينات الخاطئة الواضحة قبل نقل القطع الأثرية إلى أسفل خط الأنابيب. هذا ليس أمان الحاوية بالكامل ، لكنه لا يزال أحد أكثر الضوابط العملية لتقليل المخاطر التي يمكن تجنبها مبكرًا.
علاج مانيفست Kubernetes و البنية التحتية ككود ( IaC ) كأدوات أمنية حرجة
يمكن لتعريفات عبء العمل (مثل Kubernetes والقرون والأذونات) ومخططات Helm (تكوينات Kubernetes المجمعة) و Terraform (توفير البنية التحتية ، مثل الموارد السحابية والشبكات) وعناصر النشر الأخرى (أي تكوين يتم استخدامه لتدوير الأنظمة) تقديم الامتيازات والشبكات و التعرض لمشاكل قبل وقت طويل من وقت التشغيل.
فرض الامتياز الأقل في الكتلة
يجب تصميم Kubernetes RBAC بعناية للمستخدمين وحسابات الخدمة وأعباء العمل. يؤدي الوصول المفرط إلى زيادة مخاطر سوء الاستخدام وتصعيد الامتيازات.
استخدم مراقبة الدخول وتنفيذ السياسة
تصبح قواعد الأمان أكثر فعالية عندما يتم فرضها تلقائيًا في وقت النشر. يمكن لعناصر تحكم القبول إيقاف الموارد الخطرة قبل قبولها في المجموعة ، بينما يمكن لمحركات السياسة المساعدة في توحيد المتطلبات عبر الفرق والبيئات.
تقسيم الشبكات لتقليل نصف قطر الانفجار
يجب أن تعكس سياسات الشبكة كيفية تواصل التطبيقات فعليًا ، مع الحد من الحركة غير الضرورية بين الشرق والغرب.
مراقبة سلوك وقت التشغيل
لن يؤدي فحص وقت الإنشاء إلى اكتشاف كل مشكلات وقت التشغيل. لا تزال الفرق بحاجة إلى رؤية بشأن سلوك العملية ، والاتصالات ، واستهلاك الموارد ، وانحراف السياسة والنشاط المشكوك فيه داخل الحاويات قيد التشغيل. هذا هو السبب في أن مراقبة وقت التشغيل يجب أن تتجاوز حالة الصورة لتشمل التطبيقات قيد التشغيل ونشاط المنسق والاتصالات بين الحاويات.
سجل بشكل كافٍ للتحقيق
تنشئ بيئات Container و Kubernetes سجلات في طبقات متعددة ، وهذا القياس عن بُعد مهم للكشف عن الحادث والتحقيق بعد وقوعه.
كيف ينبغي على فرق DevSecOps تطبيق عناصر التحكم هذه دون إبطاء التسليم؟
النهج الأكثر فعالية هو وضع التحكم الصحيح في المرحلة الصحيحة .
في مرحلة البناء ، ركز على نظافة الصورة ومسح التبعية والكشف السري ومصدر البرامج.
في مرحلة النشر ، ركز على التحقق من صحة البيان وإنفاذ السياسة ومراقبة الدخول.
في وقت التشغيل ، ركز على مراقبة السلوك والتنبيه واكتشاف الانجراف والاستعداد للتحقيق.
النهج المرحلي مهم لأنه ليست كل قضية تنتمي إلى نفس البوابة. يجب أن تمنع بعض عمليات الفحص النشر بينما يجب أن يقوم البعض الآخر بإجراء مراجعة أو إصلاح أو مراقبة وقت التشغيل. تفصل الفرق الناضجة انتهاكات ضرورة الإصلاح عن المشكلات منخفضة المخاطر بحيث يظل الأمان قابلاً للتنفيذ دون أن يصبح عنق زجاجة. يعمل النهج المرحلي بشكل أفضل عندما تستخدم الفرق بوابات الجودة للصور ورمز البنية التحتية ، ثم تقوم بدمجها مع فحوصات وقت التشغيل وعناصر التحكم في الامتثال عبر دورة الحياة.
كيف تبدو الممارسة الجيدة في العمليات اليومية؟
في البيئات التي يتم تشغيلها بشكل جيد ، لا يعتبر أمان الحاوية حدثًا منفصلاً في نهاية دورة الإصدار - إنه جزء من كيفية إنشاء البرامج وشحنها. يعرف المطورون الصور الأساسية التي تمت الموافقة عليها ، وتقوم خطوط أنابيب CI بتشغيل عمليات الفحص تلقائيًا ، وتحدد فرق النظام الأساسي حواجز الحماية العنقودية بوضوح ، وتقوم فرق الأمان بمراجعة الاتجاهات والاستثناءات ونقاط الضعف المتكررة بدلاً من الاعتماد على المراجعات لمرة واحدة فقط.
ويعد هذا الإيقاع التشغيلي مهمًا لأن DevSecOps ينجح عندما تكون عناصر التحكم متوقعة. من المرجح أن تقبل الفرق متطلبات الأمان عندما يتم تضمين المتطلبات في الأدوات وسير العمل ، بدلاً من تقديمها كاعتراضات في مرحلة متأخرة.
ما الذي يجب على الفرق مراجعته بانتظام؟
يتم الحفاظ على برامج أمان الحاويات الجيدة ، وليس إطلاقها فقط. يجب على الفرق مراجعة:
- الصور التي تمت الموافقة عليها والتي لا تزال قيد الاستخدام
- ما إذا كان يتم ترحيل الثغرات الأمنية القديمة إلى بنى جديدة أم لا
- ما إذا كانت الاستثناءات من السياسة تتزايد بمرور الوقت
- ما إذا كانت حسابات الخدمة والأدوار تظل تتمتع بامتيازات زائدة
- عما إذا كانت سياسات الشبكة لا تزال تتطابق مع كيفية توصيل أحمال العمل فعليًا
- سواء كانت تنبيهات وقت التشغيل تؤدي إلى تحقيقات مفيدة أو مجرد تشويش
- سواء كان التسجيل كافيًا للاستجابة للحوادث ومراجعة ما بعد الحادث أم لا.
تساعد نقاط المراجعة هذه على منع انحراف التحكم - بدونها ، يمكن أن تصبح سياسات الأمان المعقولة قديمة أو مطبقة بشكل غير متسق.
أين تفهم المنظمات ذلك بشكل خاطئ
الخطأ ، يتمثل أحد الأخطاء الشائعة في دفع الأمن بعيدًا إلى اليسار وافتراض أن وقت التشغيل لم يعد مهمًا. يعد Shift-left أمرًا ذا قيمة ، ولكن الحاويات ديناميكية ، ولا تزال رؤية وقت التشغيل مهمة لاكتشاف السلوك المشكوك فيه ، والأذونات التي يتم إساءة استخدامها ، وفشل التحكم الذي لا يظهر إلا بعد النشر.
هناك خطأ آخر وهو التعامل مع السياسة الأمنية كخطوة مراجعة خارجية بدلاً من اعتبارها شيئًا مشفرًا عند التسليم. إذا سمع المطورون عن الانتهاكات فقط في نهاية العملية ، تصبح المعالجة أبطأ وأكثر عدوانية.
والثالث يحاول تأمين الحاويات دون تأمين النظام الأساسي من حولهم. يمكن لفرق DevSecOps تحسين جودة الصورة ، ولكن لا يزال التحكم في الوصول على مستوى المجموعة وسياسات الدخول والتسجيل والتجزئة يتطلب توافقًا وثيقًا مع فرق النظام الأساسي والأمان.
ما الذي ينبغي أن تتضمنه قائمة تحقق DevSecOps العملية؟
تتضمن قائمة التحقق القابلة للتطبيق عادةً ما يلي:
- الصور الأساسية المعتمدة ومصدر الصورة
- ومسح التبعية في CI
- الكشف السري قبل الدمج أو البناء
- البيان ومراجعة اللجنة الاستشارية الدولية لإعدادات الأمان
- أقل امتياز RBAC وتصميم حساب الخدمة
- التحكم في قبول نشر الدرابزين
- سياسات شبكة الاتصال لعزل عبء العمل
- مراقبة وقت التشغيل لنشاط الحاوية والمجموعة
- التسجيل المركزي والاستعداد للتحقيق
- المراجعة المنتظمة للسياسات والاستثناءات والقواعد القديمة.
الوجبات الجاهزة الرئيسية
إن أفضل ممارسة لأمان الحاوية لفرق DevSecOps هي نموذج التسليم: المدخلات الآمنة ، وفرض حواجز الحماية للنشر ، ومراقبة سلوك وقت التشغيل ، والحفاظ على حلقة الملاحظات محكمة بما يكفي بحيث يمكن للفرق الهندسية إصلاح المشكلات قبل أن تصبح خطرًا على الإنتاج.
أضف أمان الحاوية إلى خط أنابيب DevSecOps الخاص بك
تعتمد عمليات DevSecOps الفعالة على عناصر التحكم في الأمان التي تعمل داخل عملية تطوير البرامج. يساعد Kaspersky Container Security الفرق على فحص صور الحاوية ، واكتشاف الثغرات الأمنية في تشغيل الحاويات ، ومراقبة استهلاك الموارد والاتصالات ، وأتمتة فحوصات الأمان والامتثال.
المصادر وقراءات إضافية:
