feat: complete all SecOps tasks with full content

هذا الالتزام موجود في:
AbdulRhmanAbdulGhaffar
2026-07-27 14:53:15 +03:00
الأصل 582bf1214d
التزام f113a14171
16 ملفات معدلة مع 213 إضافات و0 حذوفات

عرض الملف

@@ -0,0 +1,17 @@
# قائمة التدقيق الأمني (15 بنداً) — ghaymah.systems
1. **فحص ثغرات الـ Images:** الاعتماد على Trivy أو Grype داخل pipeline الـ CI/CD لفحص حاويات Ghaymah وتحديد الـ CVEs الحرجة قبل التوزيع.
2. **الحد من صلاحيات Root:** إجبار الحاويات تشتغل بـ Non-root UID (مثلاً `USER 10001`) لمنع الـ Container Escape.
3. **تحديد حدود الموارد (Resource Limits):** ضبط `limits` و `requests` للـ CPU والـ RAM لكل حاوية لتفادي هجمات DoS على النودز.
4. **تقليل المساحة المعرضة للهجوم (Attack Surface):** إغلاق كل المنافذ غير الضرورية وتكليف الـ WAF بإدارة منفذي 80 و443 فقط.
5. **تقسيم الشبكة السحابية (VPC Segmentation):** فصل سيرفرات الـ API عن قواعد البيانات عبر Private Subnets داخل غيمة.
6. **التشفير الداخلي (mTLS):** إجبار الاتصال بين الـ Microservices باستخدام TLS 1.3 ومفاتيح متبادلة.
7. **الوقاية من الـ SQLi والـ Injection:** استخدام ORMs مع حظر الاستعلامات المباشرة (Raw SQL Queries) وتقييم المدخلات.
8. **تعزيز آليات الجلسات (JWT Security):** توقيع الـ Tokens بـ RS256 مع عمر افتراضي لا يتعدى 15 دقيقة وتفعيل الـ Refresh Tokens.
9. **حماية البيانات الحساسة أثناء المعالجة:** عدم إظهار الـ Stack Traces أو الأخطاء التفصيلية للمستخدم في بيئة الإنتاج.
10. **تعطيل DTDs لمنع هجمات XXE:** ضبط الـ XML Parsers بتعطيل المراجع الخارجية كلياً.
11. **تطبيق صارم لـ RBAC:** التحقق من صلاحيات الحساب (Authorization) على مستوى كل Endpoint وليس فقط عند التسجيل.
12. **تشفير البيانات المخزنة (KMS):** ربط جميع وحدات Ghaymah Block Storage بمفاتيح تشفير AES-256 يتم تدويرها تلقائياً.
13. **حماية النسخ الاحتياطية من الحذف:** تفعيل خيار الـ Immutability للـ Snapshots الخاصة بالتخزين.
14. **تطبيق الـ Least Privilege في الـ IAM:** عدم منح أي IAM Role صلاحية `*` وإعطاء الصلاحيات على مستوى المورد (Resource Level).
15. **التدوير الدوري للـ Secrets:** ربط التطبيق بـ Vault أو Ghaymah Secrets Manager لتدوير الباسوردات ومفاتيح الـ API كل 90 يوماً.

عرض الملف

@@ -0,0 +1,26 @@
#!/bin/bash
# Ghaymah Infrastructure Health Check
# Author: SecOps Team
TARGET="ghaymah.systems"
LOG_FILE="/var/log/ghaymah_audit.log"
echo "[i] Starting automated check for $TARGET at $(date)" >> $LOG_FILE
# 1. Port Check
for port in 80 443 22 8080; do
nc -zx2 -w2 $TARGET $port &>/dev/null
if [ $? -eq 0 ]; then
echo "[WARN] Port $port is reachable on $TARGET" >> $LOG_FILE
fi
done
# 2. Check TLS Expiry
EXP_DAYS=$(echo | openssl s_client -servername $TARGET -connect $TARGET:443 2>/dev/null | openssl x509 -noout -dates | grep notAfter | cut -d= -f2)
echo "[INFO] Certificate Expiry Date: $EXP_DAYS" >> $LOG_FILE
# 3. Check Configuration File Permissions
CONFIG_PERM=$(stat -c "%a" /etc/ghaymah/config.json 2>/dev/null)
if [ "$CONFIG_PERM" != "600" ]; then
echo "[ALERT] Insecure perms on config file: $CONFIG_PERM (Expected 600)" >> $LOG_FILE
fi