--- ## أولاً: Container Security **1. منع تشغيل الحاوية بصلاحيات Root** التطبيق على غيمة: تعديل الـ `Dockerfile` لكل خدمة منشورة على غيمة لإنشاء مستخدم غير مميز (`RUN adduser appuser` ثم `USER appuser`) بدل الاعتماد على الـ root الافتراضي. لو الـ Container اتخرق، المهاجم مبيلاقيش صلاحيات كافية يوصل بيها لباقي النظام. **2. استخدام Base Images مصغّرة (Minimal Base Images)** التطبيق على غيمة: استبدال صور زي `ubuntu:latest` بصور `alpine` أو `distroless` في خدمات غيمة، عشان نقلل الـ Attack Surface. **3. فحص الثغرات قبل النشر (Image Scanning)** التطبيق على غيمة: دمج أداة زي Trivy أو Grype جوه الـ CI/CD Pipeline بتاع غيمة، بحيث لو الصورة فيها CVE بمستوى High/Critical، الـ Pipeline يوقف قبل ما يعمل Deploy، مش بعد ما ينزل على Production. --- ## ثانياً: Network **4. تطبيق سياسات العزل (Network Policies)** التطبيق على غيمة: تفعيل Network Policies بحيث خدمة الـ Frontend تقدر تكلم الـ API بس، ومتقدرش توصل للـ Database مباشرة — أي Traffic خارج القاعدة ده بيتمنع افتراضياً (Default Deny). **5. إغلاق المنافذ غير الضرورية (Port Restrictions)** التطبيق على غيمة: التأكد إن المنفذ 443 (HTTPS) بس هو المتاح للإنترنت، وإن أي منفذ إداري زي 22 (SSH) أو 8080 مقفول من برا ومتاح بس عن طريق VPN أو Bastion Host. **6. تشفير الاتصال الداخلي (mTLS بين الـ Microservices)** التطبيق على غيمة: تفعيل Mutual TLS بين الخدمات الداخلية جوه بيئة غيمة، بحيث حتى لو حد قدر يوصل للشبكة الداخلية، مايقدرش يقرا أو يعدّل الترافيك اللي بين الخدمات (مثلا Istoria). --- ## ثالثاً: OWASP **7. التحكم في الوصول المكسور (Broken Access Control)** التطبيق على غيمة: تطبيق "الرفض الافتراضي" (Deny by Default) على كل مسارات الـ API، والتأكد إن كل Endpoint بيتحقق من الـ Token والصلاحية بتاعة صاحبه، مش بس إنه Logged in. **8. فشل التشفير (Cryptographic Failures)** التطبيق على غيمة: فرض TLS 1.2 كحد أدنى على كل الـ Load Balancers، ومنع أي Cipher Suites ضعيفة، وعدم تخزين بيانات حساسة (Tokens, Secrets) كـ Plain Text في أي مكان. **9. حقن الأكواد (Injection)** التطبيق على غيمة: استخدام Parameterized Queries / ORM بدل بناء الاستعلامات بالـ String concatenation، وتفعيل WAF على مدخل غيمة لفلترة الأنماط المشبوهة. **10. التصميم غير الآمن (Insecure Design)** التطبيق على غيمة: عمل Threat Modeling بسيط قبل إضافة أي feature جديدة (مين ممكن يهاجمها وإزاي)، وتطبيق Rate Limiting على نقاط الدخول الحساسة زي الـ Login عشان نمنع Brute Force. **11. الإعدادات الأمنية الخاطئة (Security Misconfiguration)** التطبيق على غيمة: إزالة أي صفحات أو توثيق افتراضي (زي Swagger UI) من بيئة الإنتاج، وإخفاء الـ Headers اللي بتكشف نوع السيرفر أو الإصدار. --- ## رابعاً: Data **12. تشفير البيانات المخزنة (Encryption at Rest)** التطبيق على غيمة: تفعيل تشفير الـ Block Storage/Volumes بتاعة غيمة باستخدام مفاتيح تشفير مُدارة، بحيث لو حد وصل للديسك الفعلي مش هيقدر يقرا الداتا من غير المفتاح. **13. إدارة نسخ احتياطي آمنة (Secure & Immutable Backups)** التطبيق على غيمة: عزل شبكة الـ Backup عن شبكة الإنتاج، وجعل النسخ الاحتياطية Immutable (مش قابلة للحذف أو التعديل) لفترة معينة، عشان لو حصل Ransomware attack نقدر نرجع للداتا. --- ## خامساً: IAM **14. مبدأ أقل الصلاحيات (Principle of Least Privilege)** التطبيق على غيمة: استخدام RBAC بحيث المطورين معندهمش صلاحية تعديل البنية التحتية في بيئة الإنتاج، ودورهم يقتصر على بيئة الـ Staging/Testing. **15. المصادقة الثنائية الإلزامية (Mandatory MFA)** التطبيق على غيمة: فرض تفعيل MFA على أي حساب عنده وصول للوحة تحكم غيمة أو صلاحية SSH على السيرفرات، عشان لو الباسورد اتسرق لوحده يفضل مش كفاية للدخول.