الإعدادات
privacy.storage_manager.language_settings
إعدادات السمة
HTML ترميز/فك الترميز
أداة Escape/Unescape لكيانات HTML للمساعدة في تقليل مخاطر XSS
🚀 بداية سريعة
- أدخل المحتوى (HTML أو نصًا مُسبق التجاوز) في مربع النص
- اختر ترميز أو فك ترميز
- انقر الزر لبدء التحويل؛ ستظهر النتيجة في نفس مربع النص
- انقر نسخ لإعادة استخدام النتيجة
📌 سيناريوهات شائعة
- تعليقات المستخدمين: تجاوز التعليقات المقدمة من المستخدمين لمنع هجمات XSS
- منشورات المدونة: عرض أمثلة رمز HTML في المقالات
- منشورات المنتدى: عرض المحتوى الذي ينشئه المستخدمون بأمان
- رسائل الدردشة: منع انتشار التعليمات البرمجية الضارة عبر ميزات الدردشة
- بيانات النموذج: معالجة وعرض بيانات إرسال النموذج
- عرض الكود: عرض مقتطفات كود HTML/JavaScript على صفحات الويب
🧭 نصائح الاستخدام
- التجاوز السياقي: اختر استراتيجية التجاوز المناسبة بناءً على موقع الإخراج
- المعالجة من جانب الخادم: يجب إجراء تجاوز الأمان الحرج من جانب الخادم
- التحقق المزدوج: تحقق من الإخراج بعد التجاوز للتأكد من عدم تفويت أي شيء
- استخدام المكتبات: يجب أن تستخدم بيئات الإنتاج مكتبات تجاوز ناضجة بدلاً من المعالجة اليدوية
- فحص المعاينة: معاينة العرض الفعلي في وحدة تحكم المتصفح بعد التجاوز
🎛️ قواعد الهروب والكيانات
- أحرف شائعة: < > & " ' (الشرطة المائلة / ليست مطلوبة عادةً؛ بحسب السياق)
- تنسيق الكيان: يتم تحويل الأحرف الخاصة إلى تنسيق &entity; أو &#code;، مثل < يصبح &lt; أو &#60;
- تجاوز السمات: علامات الاقتباس تتحول إلى &quot;، مما يحمي قيم سمات HTML
- حماية البرامج النصية: علامات <script> يتم تجاوزها تلقائياً لمنع حقن JavaScript
- اكتب <div> كـ <div> لتجنب تفسيره كبنية HTML من المتصفح
⚠️ القيود والتوافقية
- ليس مُنقّيًا (sanitizer): لا يزيل السكربتات/الأحداث/البروتوكولات غير الآمنة؛ استخدم مع تنقية المحتوى
- حماية غير كاملة: التجاوز وحده لا يمكنه منع جميع XSS، اجمع مع تدابير أمان أخرى
- يعتمد على السياق: تتطلب المواقع المختلفة استراتيجيات تجاوز مختلفة (محتوى HTML، السمات، JavaScript، CSS)
- للحفاظ على سلاسة الصفحة، قد تتم معالجة النصوص الكبيرة بشكل مبسط. يُفضّل التقسيم
🔒 الخصوصية والأمان
- تتم جميع المعالجة داخل متصفحك؛ ولا تغادر بياناتك جهازك
❓ أسئلة شائعة
ما هو هجوم XSS؟
XSS (البرمجة النصية عبر المواقع) هو عندما يحقن المهاجمون نصوصاً برمجية ضارة في صفحات الويب لسرقة معلومات المستخدم أو تنفيذ عمليات ضارة. تجاوز HTML هو دفاع أساسي ضد XSS
متى يكون تجاوز HTML ضرورياً؟
التجاوز ضروري عند عرض أي إدخال من المستخدم، بما في ذلك التعليقات والرسائل وبيانات النموذج وما إلى ذلك. أي محتوى قد يحتوي على علامات HTML يحتاج إلى تجاوز
ما الفرق بين &lt; و &#60;؟
كلاهما يمثل < (أصغر من). &lt; كيان مُسمّى (lt = less‑than)، و&#60;/&#x3C; كيانات رقمية/ست عشرية. في HTML الحديث سلوكهما متماثل: استخدم &lt; لسهولة القراءة؛ واستخدم &#60;/&#x3C; عندما لا تُدعم الكيانات المُسمّاة أو لتمثيل أي محارف/عبر لغات ترميز أخرى. احرص على إبقاء الفاصلة المنقوطة في النهاية (مثل &lt;)؛ بدونها قد يلتصق بما يلي ويُفسَّر خطأً؛ مثلًا “&notin” تُفسَّر كـ “&not;”+“in” → “¬in”
هل يمنع التجاوز جميع حقن JavaScript؟
لا. تجاوز HTML يعمل فقط في سياق HTML. سياقات JavaScript وCSS وURL تتطلب طرق تجاوز مختلفة
لماذا أرى أحياناً &amp;lt; تجاوز مزدوج؟
يحدث هذا عندما يتم تجاوز المحتوى مرتين. أولاً يصبح < إلى &lt;، ثم يتم تجاوز & إلى &amp;، مما ينتج عنه &amp;lt;. تجنب التجاوز المتكرر
كيف يمكن السماح ببعض علامات HTML الآمنة؟
استخدم آلية القائمة البيضاء للسماح فقط بعلامات وسمات آمنة محددة. يتطلب هذا مكتبات تطهير HTML متخصصة، وليس مجرد تجاوز بسيط