إنتقل إلى المحتوى الرئيسي

دليل الأمان

تم بناء PulseHub مع اعتبار الأمان مصدر قلق أساسي.


المصادقة

  • كلمات المرور: bcrypt بعامل تكلفة 12 — لا تُخزن أبدًا كنص عادي
  • الجلسات: HttpOnly، SameSite=Strict، use_strict_mode، يتم تجديدها عند تسجيل الدخول
  • مقارنة في وقت ثابت عبر password_verify() و hash_equals()

منع حقن SQL

تستخدم جميع الاستعلامات عبارات PDO المُعدة مع EMULATE_PREPARES = false. لا يمكن أبدًا تفسير مدخلات المستخدم كصياغة SQL.


منع XSS

يتم تهريب جميع المخرجات الديناميكية باستخدام e()htmlspecialchars(ENT_QUOTES | ENT_HTML5, 'UTF-8').


حماية CSRF

ملفات تعريف الارتباط SameSite=Strict تمنع الطلبات عبر المواقع. نماذج تسجيل الدخول والمُثبّت تتضمن حقل _token مخفي.


التحقق من توقيع Webhook

  • WhatsApp، Facebook، Instagram: HMAC-SHA256 مع App Secret
  • Viber: HMAC-SHA256 مع Auth Token
  • الكل يستخدم hash_equals() (وقت ثابت)

ضوابط الوصول إلى المجلدات

المجلدات الحساسة (config/، app/، data/) محظورة من الوصول عبر الويب من خلال .htaccess وتكوين nginx.


رؤوس الأمان الموصى بها

<IfModule mod_headers.c>
Header set X-Frame-Options "SAMEORIGIN"
Header set X-Content-Type-Options "nosniff"
Header set X-XSS-Protection "1; mode=block"
Header set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>

الحفاظ على أمان PulseHub

  1. حافظ على تحديث PHP وMySQL
  2. استخدم HTTPS في كل مكان
  3. قم بتدوير مفاتيح API بشكل دوري
  4. راقب سجلات cron
  5. قم بعمل نسخ احتياطية منتظمة لقاعدة البيانات ومجلد config/