إزالة السكربتات والكود المخفي من ملفات SVG
07 ليس تنسيق صور فوتوغرافية إطلاقًا - خطر مختلف تمامًا
كل التنسيقات الأخرى على هذا الموقع عبارة عن بكسلات مُرَستَرة، مُغلَّفة داخل حاوية ثنائية.
أما SVG فمختلف: إنه نص XML خالص يصف أشكالًا، ويمكن لـXML أن يحتوي عنصر
<script>، أو معالِجات أحداث مضمّنة (onload=، onclick=)،
أو تصريحات كيانات XXE - كود حقيقي، وليس مجرد بيانات ترافق الملف. لا يوجد هنا عمليًا أي خطر
EXIF/GPS (ملفات SVG ليست مخرجات كاميرا)، لكن خطر المحتوى النشط حقيقي وخاص بهذا التنسيق تحديدًا.
تعمّق أكثر: لماذا لا يمكن "تنظيف" SVG كما تُنظَّف التنسيقات الأخرى
لا توجد مجموعة جزئية آمنة من أي XML/سكربت عشوائي يمكن الحفاظ عليها مع إزالة "الأجزاء السيئة فقط"
- لذا لا تحاول هذه الأداة ذلك. تُرَستَر كل ملف SVG: يُعرَض كبكسلات مسطّحة عبر مُعرِض آمن لا
يُنفّذ أبدًا محتوى <script> ولا يُجري أبدًا طلب شبكة أثناء العرض، وتمر نتيجة
البكسلات هذه بعد ذلك عبر نفس عملية إعادة البناء التي يمر بها أي تنسيق آخر. الإخراج دائمًا PNG -
لا وجود هنا عمدًا لشيء اسمه "SVG مُعقَّم"، وهو نفس المنطق الموضّح في
صفحة المقارنة.
ما الذي يُبلَّغ عنه فعليًا قبل الترسترة
يُظهر التقرير بالضبط ما وُجد قبل التخلص منه - عناصر <script>، وروابط
javascript:، وسمات معالِج أحداث مضمّنة، وعناصر <foreignObject>،
وتصريحات كيانات DOCTYPE - حتى ترى تحديدًا ما كان في الملف، وليس مجرد رسالة عامة مثل "تم تنظيف ذلك".