21 يوليو 2026
ترويسات الأمان التي لا ترسلها معظم المواقع — وما الذي يمنعه كل منها فعليًا
نفّذ الأمر curl -I على أي موقع لشركة صغيرة تقريبًا وسترى الشيء نفسه: بضع ترويسات للتخزين المؤقت، وربما رقم إصدار للخادم لا ينبغي كشفه، ولا شيء من ترويسات الأمان الستّ تقريبًا التي تدعمها المتصفحات منذ سنوات. فجوة غريبة، لأن ترويسات الأمان شبه مجانية — لا برمجيات جديدة، لا كلفة في الأداء، تغيير واحد في الإعدادات — وكل واحدة منها تزيل فئة كاملة من الهجمات، لا ثغرة واحدة فقط.
ترويسة الأمان ببساطة تعليمة يرفقها خادمك مع كل استجابة، تخبر متصفح الزائر كيف يتعامل مع موقعك: ما المسموح له بتحميله، وهل يمكن تضمينه داخل مواقع أخرى، وهل يُقبل الاتصال غير المشفر أصلًا. المتصفح هو من يفرض القواعد. كل ما عليك هو أن تطلب.
Strict-Transport-Security (HSTS)
بروتوكول HTTPS يحمي فقط من يستخدمه فعلًا. من دون HSTS، من يكتب اسم نطاقك مجردًا في المتصفح يُرسل أول طلب غير مشفر — وعلى شبكة معادية (فكّر في Wi-Fi المطارات)، يكفي هذا الطلب الوحيد ليعترض المهاجم الاتصال ويُبقي الضحية على HTTP غير المشفر بينما يمرر موقعك الحقيقي عبره. هذا ما يسمى SSL stripping، وهو أداة قياسية منذ 2009.
الترويسة Strict-Transport-Security: max-age=63072000 تقول للمتصفح: خلال السنتين القادمتين، لا تتصل بهذا النطاق عبر HTTP غير المشفر إطلاقًا، بلا استثناءات. نافذة التخفيض تختفي بعد أول زيارة.
Content-Security-Policy (CSP)
أقوى الترويسات، والوحيدة التي تتطلب عناية حقيقية. CSP قائمة سماح تحدد من أين يجوز تحميل المحتوى في صفحاتك: السكربتات من نطاقك فقط، لا إضافات، لا تضمين، والصور من مصادر تسميها أنت.
قيمتها الحقيقية كخط دفاع ثانٍ. هجمات حقن السكربتات (XSS) والبرمجيات الخبيثة المحقونة تعمل في النهاية بجعل متصفح الضحية ينفذ سكربتًا لم يقصده صاحب الموقع أبدًا. سياسة CSP صارمة تعني أنه حتى عندما يجد المهاجم طريقة لحقن شيء ما، يرفض المتصفح تنفيذه — الحقن يصل، لكن الحمولة لا تنفجر.
ولأن CSP يحجب كل ما لا يعرفه، فإن نشره بلا تروٍّ قد يعطّل موقعك نفسه. الطريق العاقل أن تبدأ بـ Content-Security-Policy-Report-Only الذي يسجل المخالفات دون فرض أي شيء، تراقب أسبوعًا، ثم تنتقل إلى الفرض.
ترويسة X-Content-Type-Options وتوجيه frame-ancestors
اثنتان صغيرتان تستحقان الشحن معًا:
X-Content-Type-Options: nosniffتمنع المتصفح من التخمين في أنواع الملفات. تاريخيًا كانت المتصفحات “تتشمم” محتوى الملف ويمكن خداعها لتنفيذ صورة أو ملف نصي مرفوع كسكربت. ترويسة واحدة تنهي التخمين.frame-ancestors 'none'(داخل CSP، بديلًا عنX-Frame-Optionsالأقدم) تمنع المواقع الأخرى من تحميل موقعك داخل إطار iframe خفي. هذه هي آلية هجمات اختطاف النقرات (clickjacking) — يظن الزائر أنه ينقر زرًا في صفحة المهاجم بينما ينقر فعليًا شيئًا في موقعك.
Referrer-Policy
عندما يتبع زائر رابطًا من موقعك، يخبر متصفحه الوجهة من أين أتى — افتراضيًا، أحيانًا مع عنوان URL كاملًا. إن كانت عناوينك تحتوي يومًا شيئًا ذا معنى (مناطق حسابات، استعلامات بحث، مسارات إعادة تعيين كلمات المرور)، فأنت تسرّبه لكل طرف ثالث تشير إليه صفحاتك. الترويسة Referrer-Policy: strict-origin-when-cross-origin تقلّص ذلك إلى اسم نطاقك فقط، وهي افتراضي معقول للجميع.
كيف تفحص موقعك
دقيقتان، بلا أدوات تُثبَّت: الأمر curl -I https://yourdomain.com يعرض بالضبط ما يرسله خادمك، وموقع securityheaders.com يمنحه تقييمًا ويشرح كل فجوة. إن كان موقعك خلف CDN أو مستضاف لدى Vercel أو Netlify، يمكنك عادة إضافة كل هذه الترويسات في ملف إعدادات صغير واحد دون لمس أي خادم.
التحفظ الصادق
الترويسات أحزمة أمان، لا مكابح. إنها تحدّ من حجم الضرر عندما يفشل شيء آخر — لكنها لا ترقّع الإضافة المصابة بثغرة، ولا تصلح كلمة مرور المشرف الضعيفة، ولا تتحقق من مدخلات نماذجك. قد يحصل موقع على تقييم +A في الترويسات ويظل اختراقه سهلًا عبر مكوّن قديم. اشحن الترويسات لأنها شبه مجانية وفعالة حقًا، ثم واصل العمل غير اللامع — الترقيع والمراقبة والنسخ الاحتياطي — الذي لا يقيسه التقييم.