آخر تحديث:
باختصارXSS (البرمجة عبر المواقع) هجوم يضع فيه المهاجم كود جافاسكربت داخل صفحة من موقعك، عبر تعليق أو نموذج أو رابط. عندما يفتح الزائر الصفحة يعمل الكود في متصفحه، فقد يسرق جلسة الدخول أو يحوّله إلى موقع آخر أو يعرض نموذجاً مزيفاً. الحماية: تنظيف كل ما يكتبه الزوار قبل عرضه، وتحديث الإضافات، ورؤوس أمان مثل CSP.

كيف يعمل الهجوم؟ #
في XSS لا يستهدف المهاجم السيرفر مباشرة، بل يستهدف زوار موقعك. يستغل مكاناً يعرض فيه الموقع نصاً كتبه شخص آخر دون تنظيف، مثل التعليقات أو نتائج البحث أو الملف الشخصي، فيضع فيه كوداً بدل النص.
أنواع XSS #
| النوع | كيف يحدث | مثال |
|---|---|---|
| المخزّن (Stored) | الكود يُحفظ في قاعدة البيانات ويظهر لكل من يفتح الصفحة. | تعليق أو مراجعة منتج تحتوي سكربت. |
| المنعكس (Reflected) | الكود في الرابط نفسه، ويظهر لمن يضغط الرابط فقط. | رابط بحث مُعدّ يُرسل للضحية بالبريد. |
| DOM | جافاسكربت الصفحة نفسها يضع قيمة من الرابط في الصفحة دون تنظيف. | سكربت يقرأ جزءاً من الرابط ويعرضه. |
ماذا يستطيع المهاجم أن يفعل؟ #
1سرقة جلسة الدخولإذا فتح مدير الموقع الصفحة المصابة، قد يستولي المهاجم على جلسته.
2تحويل الزوارإرسالهم إلى مواقع احتيال أو إعلانات.
3نماذج مزيفةعرض نموذج دخول أو دفع مزيف داخل صفحتك الحقيقية.
4إضرار بسمعتكقد يظهر موقعك في قوائم المواقع الخطرة. اقرأ حل تحذير جوجل.
كيف تحمي موقعك؟ #
- حدّث الإضافات والقوالب: كثير من ثغرات XSS في ووردبريس تكون في إضافات النماذج والسلايدر والتعليقات القديمة.
- للمبرمجين: نظّف المخرجات: اعرض أي نص من الزائر بعد تحويله. في ووردبريس استخدم
esc_html()وesc_attr()وesc_url()، وفي PHP استخدمhtmlspecialchars(). - راجع التعليقات قبل نشرها: فعّل مراجعة التعليقات، وأوقفها في الصفحات التي لا تحتاجها.
- أضف رؤوس الأمان: سياسة CSP تحدد مصادر السكربتات المسموحة، فتصعّب تشغيل الكود المحقون. اقرأ رؤوس الأمان.
- احمِ ملفات تعريف الارتباط: ووردبريس يجعل كوكيز الدخول HttpOnly فلا يقرؤها جافاسكربت. إذا كتبت كوداً خاصاً فاستخدم HttpOnly وSecure أيضاً.
- جدار حماية للويب: قواعد ModSecurity توقف أنماط XSS المعروفة في الطلبات.
<?php // خطأ echo $_GET['name']; // صحيح echo esc_html($_GET['name'] ?? '');
كيف نحمي موقعك في حياة هوست؟ #
- قواعد ModSecurity وImunify360 تصد طلبات XSS المعروفة قبل وصولها إلى موقعك.
- ImunifyAV يفحص الملفات يومياً ويكتشف السكربتات الخبيثة المحقونة في ملفات القالب.
- أداة WP Toolkit في cPanel تنبهك إلى الإضافات التي فيها ثغرات معروفة.
أسئلة شائعة #
ما الفرق بين XSS وحقن SQL؟
حقن SQL يستهدف قاعدة بيانات الموقع على السيرفر. أما XSS فيستهدف متصفح الزائر بكود جافاسكربت يعمل داخل صفحتك.
هل شهادة SSL تحمي من XSS؟
لا. الشهادة تشفر الاتصال فقط، والكود المحقون يصل مشفراً أيضاً. الحماية تكون بتنظيف المخرجات والتحديث ورؤوس الأمان.
هل إضافات الحماية تكفي؟
تساعد في صد الأنماط المعروفة، لكن الثغرة نفسها تُغلق بتحديث الإضافة المصابة أو إصلاح الكود.