ADR-004 - عمارة نظام الأمان
ADR-004: عمارة نظام الأمان
Section titled “ADR-004: عمارة نظام الأمان”عمارة أمان شاملة لـ XOOPS CMS الحماية من التهديدات الحديثة.
الحالة
Section titled “الحالة”مقبول - طبقة الأمان الأساسية منذ XOOPS 2.5
السياق
Section titled “السياق”بيان المشكلة
Section titled “بيان المشكلة”يحتاج XOOPS إلى نظام أمان قوي:
- الحماية من الثغرات الويب الشائعة (أعلى 10 OWASP)
- التحكم في الأذونات الدقيقة عبر الوحدات
- تمكين المصادقة الآمنة بمعايير حديثة
- منع انتهاكات البيانات والوصول غير المصرح
- دعم التحكم في الوصول متعدد المستويات (إدارة وممراجع ومستخدم وضيف)
- الدمج مع جميع الوحدات بسلاسة
التهديدات الحالية
Section titled “التهديدات الحالية”الهجمات الويب الحديثة تشمل:
- حقن SQL - SQL خبيث في إدخال المستخدم
- XSS (البرمجة النصية للموقع المتقاطع) - JavaScript المحقون في الصفحات
- CSRF (طلب التزوير عبر الموقع) - تقديم النماذج غير المصرح بها
- تجاوز المصادقة - التعامل الضعيف مع الجلسة / كلمة المرور
- تجاوز التخويل - تصعيد الامتياز
- تعريض البيانات - البيانات الحساسة في URL أو السجلات أو الذاكرة المؤقتة
متطلبات أمان XOOPS
Section titled “متطلبات أمان XOOPS”- مصادقة المستخدم وإدارة الجلسة
- التحكم في الوصول المبني على الدور (RBAC)
- نظام الأذونات للوحدات والكائنات
- التحقق من الإدخال والهروب من الإخراج
- الحماية من الهجمات الشائعة
- تسجيل مراجعة أحداث الأمان
- التعامل الآمن مع كلمة المرور
- حماية رمز CSRF
القرار
Section titled “القرار”عمارة الأمان الأساسية
Section titled “عمارة الأمان الأساسية”graph TB subgraph "Authentication Layer" A["مصادقة المستخدم<br/>(تسجيل الدخول/الجلسات)"] B["إدارة الجلسة<br/>(الرموز/ملفات تعريف الارتباط)"] C["أمان كلمة المرور<br/>(الضغط/الملح)"] end
subgraph "Authorization Layer" D["إدارة الأدوار<br/>(الإدارة/المستخدم/الضيف)"] E["نظام الأذونات<br/>(مستوى الوحدة)"] F["أذونات الكائن<br/>(مستوى العنصر)"] end
subgraph "Protection Layer" G["التحقق من الإدخال<br/>(النوع/الصيغة)"] H["الهروب من الإخراج<br/>(HTML/JavaScript)"] I["حماية CSRF<br/>(التحقق من الرمز)"] end
subgraph "Monitoring Layer" J["تسجيل المراجعة<br/>(أحداث الأمان)"] K["تحديد المعدل<br/>(القوة الغاشمة)"] L["الكشف عن التسلل<br/>(الأنشطة المريبة)"] end
A --> B A --> C D --> E E --> F G --> I H --> I J --> K K --> Lمكونات الأمان
Section titled “مكونات الأمان”1. نظام المصادقة
Section titled “1. نظام المصادقة”عملية تسجيل دخول المستخدم:
<?php// 1. التحقق من بيانات الاعتماد$user = $userHandler->findByLogin($username);if (!$user || !password_verify($password, $user->getVar('pass'))) { throw new AuthenticationException('بيانات اعتماد غير صحيحة');}
// 2. التحقق من تفعيل الحسابif (!$user->getVar('uactive')) { throw new AuthenticationException('الحساب غير مفعل');}
// 3. إنشاء جلسة آمنةsession_regenerate_id(true);$_SESSION['uid'] = $user->getVar('uid');$_SESSION['token'] = bin2hex(random_bytes(32));$_SESSION['created'] = time();
// 4. تسجيل تسجيل الدخول$this->auditLog('USER_LOGIN', $user->getVar('uid'));أمان كلمة المرور:
<?php// استخدم password_hash وليس MD5 أو SHA1$hashed = password_hash($password, PASSWORD_BCRYPT, [ 'cost' => 12, // تكلفة عالية = القوة الغاشمة البطيئة]);
// التحقق من كلمة المرورif (!password_verify($inputPassword, $hashed)) { throw new Exception('كلمة مرور غير صحيحة');}
// إعادة تجزئة إذا تغيرت الخوارزمية أو التكلفةif (password_needs_rehash($hashed, PASSWORD_BCRYPT, ['cost' => 12])) { $newHash = password_hash($password, PASSWORD_BCRYPT, ['cost' => 12]); $user->setVar('pass', $newHash); $userHandler->insert($user);}العواقب
Section titled “العواقب”التأثيرات الإيجابية
Section titled “التأثيرات الإيجابية”- الحماية الشاملة - تغطي فئات الثغرات الرئيسية
- الأمان الطبقي - طبقات دفاع متعددة
- RBAC مرن - التحكم الدقيق في الأذونات
- مسار التدقيق - تتبع أحداث الأمان
- معيار الصناعة - يتوافق مع توصيات OWASP
- تكامل الوحدة - سهولة استخدام واجهات برمجية الأمان
التأثيرات السلبية
Section titled “التأثيرات السلبية”- التعقيد - مزيد من الأكواد والتكوين مطلوب
- الأداء - الضغط والتحقق يضيف نفقات إضافية
- تجربة المستخدم - الأمان أحياناً غير مريح
- الصيانة - يتطلب تحديثات أمان منتظمة
- التدريب المطلوب - يجب على المطورين اتباع الممارسات
القرارات ذات الصلة
Section titled “القرارات ذات الصلة”- ADR-001: العمارة المعيارية - الوحدات تطبق الأمان
- ADR-005: نظام أذونات الوحدة
- ADR-006: المصادقة متعددة العوامل (مستقبلية)
المراجع
Section titled “المراجع”معايير الأمان
Section titled “معايير الأمان”#xoops #adr #security #architecture #authentication #authorization #rbac