// SECURITY
كيف يُحمى هذا الموقع
الموقع الشخصي هدف صغير، لكنه أيضاً رسالة. هذه هي الحمايات المعتمدة مع الأوامر التي تتيح لك التحقق منها بنفسك.
آخر نتيجة مقاسة
Mozilla Observatory: A+ (160 نقطة، نجاح 12 اختباراً من 12)، قيست في 3 أكتوبر 2026 على الموقع المنشور.
الحمايات
- Content-Security-Policy
- لا تُحمَّل السكربتات والأنماط والصور والخطوط إلا من هذا الموقع (default-src 'none'). تُفرض Trusted Types فلا تصل الشفرة المحقونة إلى الدوال الخطرة في المتصفح. يُسمح بسكربت واحد مضمَّن فقط بحسب بصمته.
- Subresource Integrity
- يحمل كل سكربت وكل ملف أنماط بصمة تُحسب عند البناء، ويرفض المتصفح أي ملف جرى تعديله.
- Strict-Transport-Security
- HTTPS فقط لمدة سنتين مع preload. كما أن النطاق .dev مدرج في قائمة HTTPS الإلزامية المدمجة في المتصفحات.
- frame-ancestors, X-Frame-Options
- لا يمكن تضمين الموقع في صفحة أخرى، وهذا يمنع clickjacking.
- COOP, COEP, CORP
- تعمل الصفحة معزولة عن المصادر الأخرى (cross-origin isolation) مما يحدّ من هجمات القنوات الجانبية.
- Permissions-Policy
- الكاميرا والميكروفون والموقع وUSB وما شابهها معطَّلة.
- Referrer-Policy: no-referrer
- لا يُرسَل أي عنوان من هذا الموقع إلى المواقع التي تفتحها منه.
- X-Content-Type-Options: nosniff
- على المتصفحات احترام أنواع الملفات المعلنة.
- لا ملفات تعريف ارتباط ولا أطراف ثالثة
- لا متتبعات ولا خطوط ولا سكربتات خارجية. اختيارا اللغة والمظهر يبقيان في متصفحك.
- security.txt
- مكان معياري للإبلاغ عن ثغرة.
- سلسلة التوريد
- تُدقَّق التبعيات عند كل تغيير وكل أسبوع، وتُقترح التحديثات آلياً، ويرفض البناء الإعدادات الممنوعة، ولا تُنشر source maps.
تحقق بنفسك
اقرأ الترويسات من الطرفية:
curl -sI https://www.mohamedfhafah.dev/ | grep -iE 'content-security|strict-transport|cross-origin|permissions|referrer|x-frame|x-content' curl -s https://www.mohamedfhafah.dev/.well-known/security.txt
ماسحات مستقلة (تُفتح في تبويب جديد):
إحصاءات الزيارة
تُحتسب مشاهدات الصفحات دون ملفات تعريف ارتباط ودون حفظ عنوان IP (المسار والمصدر والبلد ونوع الجهاز فقط) لمعرفة أي روابط الترشح فُتحت.
الإبلاغ عن ثغرة
راجع security.txt أو راسلني بالبريد. أرجو عدم نشر التفاصيل قبل أن أتمكن من الرد.