المحاور الأساسية وخطوات التحصين
🔒 أين يتم تخزين الرموز السرية (LocalStorage vs HttpOnly Cookies)؟
مخاطر تخزين التوكنز في `localStorage` لسهولة سرقتها عبر XSS وتفضيل الاعتماد على `HttpOnly Cookies`.
🔒 تسريب مفاتيح الـ API في حزم الواجهة الأمامية (Frontend Bundles)
كشف مفاتيح الخدمات وسرقة الصلاحيات نتيجة تضمين متغيرات بيئية سرية داخل كود الواجهة المترجم.
🔒 تطهير الـ HTML وحماية قوالب الواجهة (Vulnerability in Templates)
استخدام آليات التطهير المدمجة في أطر العمل وتجنب دوال مثل `dangerouslySetInnerHTML` في React.
💡 نصيحة وأداة المهندس الأمني: تجنب تماماً استخدام `dangerouslySetInnerHTML` في React إلا بعد تمرير النص عبر مكتبة `DOMPurify`.
⚠️ معايير الأمان والتحذيرات الهندسية:
لا تعتمد أبداً على قيود الواجهة الأمامية (Client-Side) كخط دفاع أمني؛ يجب دائماً التحقق من صحة وتطهير كافة البيانات والتفويض في خادم الويب (Server-Side).
📌 أفضل الممارسات والتوصيات الهندسية:
- تطبيق مبدأ الصلاحيات الأقل (Principle of Least Privilege) على كافة مستويات التطبيق وقواعد البيانات.
- ترميز المخرجات المعتمد على السياق واستخدام الاستعلامات المعلمة (Parameterized Queries) لمنع كافة أنواع الحقن.
- دمج الفحص الأمني التلقائي (SAST & DAST) في خطوط الـ CI/CD لاكتشاف ومعالجة الثغرات مبكراً.
