CVE-2026-71447 in AIL Framework
الملخص
بحسب VulDB • 07/08/2026
يحتوي مشروع AIL على ثغرة تخزين عبر صفحات متعددة (Stored Cross-Site Scripting - XSS) في عناصر التحكم بالترجمة المعروضة لرسائل الدردشة ومنشورات المنتديات.
تقوم القوالب المتأثرة بإدراج معرفات الرسائل والمنشورات مباشرةً داخل معالجات أحداث onclick المضمنة في JavaScript:
onclick="translateMessageToPreferredLanguage('{{ message['id'] }}', '{{ mess_id_escape }}', this)"
وأيضاً:
onclick="translatePostToPreferredLanguage('{{ post['id'] }}', '{{ post_id_escape }}', this)"
تمت معالجة هذه القيم باستخدام الهروب من الأحرف الخاصة في القوالب النصية (HTML-template escaped)، لكنها لم تُشفّر بشكل آمن للاستخدام كسلاسل نصية داخل JavaScript ضمن سمة HTML. وبالتالي، قد يؤدي معرّف مُصاغ خصيصاً يحتوي على علامات اقتباس أو أحرف هروب أو تركيبات أخرى للغة JavaScript إلى إنهاء حجة السلسلة المتوقعة وإدراج شيفرة JavaScript تعسفية في معالج الحدث.
نظراً لأن القيم المتأثرة مرتبطة برسائل الدردشة أو منشورات المنتديات المفهرسة، فقد تبقى القيمة الخبيثة مخزنةً لدى AIL وتُعرض كلما قام محلل بالوصول إلى عرض مستكشف الدردشة أو المنتدى المقابل.
يتطلب الاستغلال الناجح أن ينقر الضحية على زر "Translate to preferred language" المتأثر. عندئذٍ ستعمل الشيفرة المضمنة في متصفح الضحية ضمن أصل الأمان (security origin) الخاص بنسخة AIL.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.