الفرق الزرقاء — الدفاع
Hardening — قبل المهاجم بيوم
CIS و WAF و Zero Trust و Patching — قفل الأبواب اللي قدامه
- المستوى
- متقدم
- المدة
- 70m
- الترتيب
- الدرس 18 من 85
CISWAFZero TrustPatching
مبدأ الحماية المتعدد الطبقات — Defense in Depth
تشبيه يقرّب الفكرة
بُص. القلعة في العصور الوسطى ما كانتش بتعتمد على سور واحد.. خندق.. سور برّاني.. سور جوّاني.. برج رئيسي.. وحرّاس. لو طبقة وقعت، اللي بعدها بتمسك. ده بالظبط Defense in Depth.
القاعدة بسيطة: ما تحطش كل بيضك في سلة واحدة. أي طبقة هتفشل يوم ما — أنت عايز اللي بعدها جاهزة.
مبادئ ذهبية — احفظهم زي اسمك
- يا حضرتك أنا بشتغل في حتة موثوقة.. كل الأجهزة بتاعتنا.. هحتاج كل ده ليه؟
يا مستجد، متوقّع كالعادة. الثقة دي بالظبط هي اللي بتحرقك. اقرا بقى:
- Least Privilege — أقل صلاحية ممكنة لكل مستخدم وخدمة. لو الـ app محتاج يقرا بس، ما تديهوش write.
- Zero Trust — ما تثقش في حد ولا في شبكة، تحقق في كل مرة. حتى الجهاز اللي جوّه الـ corporate LAN.
- Assume Breach — افترض إنك متخرق دلوقتي، واشتغل على الكشف والاحتواء.
- Defense in Depth — طبقات كتير ومتنوعة، مش نفس النوع مكرر.
- Secure by Default — الإعداد الافتراضي يكون آمن. محدش بيقرا الـ docs.
تصلب نظام Linux
hardening checklist
# 1) تحديث دائم
unattended-upgrades + apt-listbugs
# 2) SSH
PermitRootLogin no
PasswordAuthentication no
AllowUsers admin
MaxAuthTries 3
# 3) UFW / nftables — deny by default
ufw default deny incoming
ufw allow from 10.0.0.0/8 to any port 22
# 4) fail2ban على SSH و web
# 5) auditd لمراقبة استدعاءات النظام
# 6) AIDE لمراقبة سلامة الملفات
# 7) AppArmor / SELinux في وضع enforcing
# 8) تعطيل خدمات غير مستخدمة
# 9) blacklist usb-storageتصلب الويب — Web Hardening
HTTP Headers ضرورية
nginx
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
add_header X-Content-Type-Options "nosniff";
add_header X-Frame-Options "DENY";
add_header Referrer-Policy "strict-origin-when-cross-origin";
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()";
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'sha256-...';";WAF — Web Application Firewall
- Cloudflare WAF, AWS WAF, ModSecurity + OWASP CRS.
- قواعد SQLi / XSS / LFI / RCE + rate limiting.
- مراقبة الـ false positives أهم من إضافة المزيد من القواعد.
تصلب قاعدة البيانات
- مستخدم لكل تطبيق بصلاحية محدودة. لا root أبداً.
- لا DB على الإنترنت — فقط داخل VPC.
- تشفير في الراحة (at rest) و في النقل (in transit).
- Audit logging + slow query log + honey tables.
- Backup منفصل + restore drills دورية.
إدارة الهويات — Identity Hardening
- MFA إجباري لكل المستخدمين، خاصة الـ admins.
- SSO مركزي — يسهّل الرفع و العزل عند التغيير.
- PAM (Privileged Access Management) — جلسات مسجّلة كاملة.
- تدوير passwords/keys دورياً.
- كشف credential stuffing عبر مقارنة بقواعد التسريبات.
الشبكة — Network Hardening
- Microsegmentation — كل خدمة في subnet خاص.
- Egress filtering — السيرفر لا يكلّم الإنترنت إلا لـ domains محددة.
- DNS filtering (Cisco Umbrella, Quad9, Pi-hole) ضد C2.
- VPN / SASE / ZTNA بدلاً من فتح RDP و SSH للإنترنت.
- 802.1X + NAC داخل المؤسسة.
إدارة الأسرار — Secrets Management
- HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager.
- أبداً في الكود أو في .env اللي ممكن يترفع.
- Pre-commit hooks: gitleaks, detect-secrets.
- تدوير دوري + short-lived tokens.
غلطات الـ junior في الـ hardening
الخلاصة الناشفة
كل طبقة لوحدها هتفشل يوم ما.
ده مش تشاؤم.
ده تخطيط.
اللي عنده 5 طبقات ضعيفة بيكسب على اللي عنده طبقة واحدة "ممتازة". وأنت ونصيبك في الباقي.
خلّصت الدرس؟
علّمه علشان تفضل عارف انت فين على السكة.