Files
ahmed 8fe818e647
Deploy GitHub Pages / deploy (push) Canceled after 0s
Initial site release
2026-10-02 12:46:11 +03:00

49 lines
3.4 KiB
Markdown

# تدقيق الأمان النهائي قبل الإطلاق
## القرار
**صالح للنشر العام كنموذج واجهة ثابتة فقط. غير صالح بعد كنظام حسابات أو عضوية إنتاجي.**
الصفحات الحالية لا تتصل بخادم، ولا تنفّذ تسجيل دخول أو تغيير كلمة مرور أو دفع أو إلغاء اشتراك فعلي. رسائل النجاح في هذه الشاشات هي محاكاة داخل المتصفح، وهذا واضح في نصوص المعاينة الحالية.
## ما تم فحصه
- 11 صفحة HTML وملفا CSS/JavaScript مشتركان.
- الأسرار والمفاتيح وبيانات الاعتماد المضمّنة.
- مسارات XSS الشائعة: `innerHTML` و`eval` و`document.write` وروابط `javascript:`.
- الروابط والأصول المحلية ومحاولات الخروج من مجلد المشروع.
- عناوين URL والاعتماديات البعيدة.
- صحة JavaScript المضمّن والمشترك.
- نماذج تسجيل الدخول، استعادة كلمة المرور، إعدادات الحساب، والتعليقات.
## الإصلاحات المنفذة
أضيف إلى الصفحات الـ11:
1. سياسة إحالة `strict-origin-when-cross-origin`.
2. سياسة محتوى CSP تمنع الاتصالات الخارجية والإطارات والكائنات والإضافات، وتقصر الصور والخطوط والملفات على أصل الموقع.
3. تقييد وجهة النماذج إلى أصل الموقع فقط.
## نتائج التحقق
- لا أسرار أو مفاتيح API مكتشفة.
- لا روابط أو صور أو سكربتات بعيدة.
- لا استخدام لمسارات JavaScript الخطرة التي جرى فحصها.
- جميع الروابط والأصول المحلية موجودة ولا تخرج من المشروع.
- 11 سكربتاً مضمّناً وملف JavaScript مشترك اجتازوا فحص الصياغة.
- جميع الصفحات الـ11 تحتوي CSP وسياسة إحالة، مرة واحدة لكل صفحة.
## المتبقي قبل إطلاق حسابات حقيقية
1. بناء مصادقة وجلسات على الخادم باستخدام Cookies آمنة (`Secure` و`HttpOnly` و`SameSite`) وعدم تخزين رموز الدخول في `localStorage`.
2. تنفيذ التفويض على الخادم لكل محتوى حصري؛ إخفاء المحتوى في الواجهة وحده لا يحميه.
3. إضافة CSRF وتحديد المعدل لتسجيل الدخول واستعادة كلمة المرور، مع رسائل لا تكشف وجود الحساب.
4. نقل JavaScript وCSS المضمّنين إلى ملفات محلية ثم إزالة `'unsafe-inline'` من CSP، وإرسال CSP وبقية ترويسات الأمان كـ HTTP headers من منصة الاستضافة.
5. اعتماد سياسة الخصوصية قانونياً وربط الدفع والبريد عبر مزودين موثوقين قبل جمع أي بيانات حقيقية.
## إعدادات المستودع المقترحة
- إبقاء المستودع خاصاً حتى إزالة أي محتوى تجريبي غير مخصص للعامة.
- تفعيل GitHub secret scanning وpush protection و2FA للحسابات التي تملك صلاحية النشر.
- حماية فرع الإنتاج وطلب مراجعة قبل الدمج.