
تقرير وإثبات مفهوم لـ CVE-2026-96878، وهو XSS مخزّن في أسماء الحقول المستعارة لحقل Exhibit في إضافة Cargo لـ MediaWiki، مع ملاحظات التحقق ومراجع الإصلاح من المصدر الأصلي.
المُبلِّغ: Marco Paciaroni (BomboBombone).
كان مُصيِّر Exhibit في Cargo يُدرج أسماء الحقول المستعارة في عرضه بتنسيق HTML دون ترميزها لسياقات النص والسمات. كان بإمكان محرر الصفحة حفظ استعلام تُفسَّر أسماؤه المستعارة على أنها ترميز عند عرض الصفحة.
يحدد سجل CVE الإصدارات حتى 3.9.4 من Cargo على أنها متأثرة.
تطلّب السيناريو المُبلَّغ عنه تنسيق Exhibit، وصلاحية تحرير صفحة تُعرض لمستخدمين آخرين، واستعلامًا يحتوي على حقول متعددة. حدث تنفيذ النص البرمجي في أصل الويكي لزوار تلك الصفحة.
يسجّل التقرير الأصلي تنفيذًا في المتصفح من عرض Exhibit على نسخة MediaWiki محلية. لم يُنتج اسم مستعار عادي أي عنصر يحمل حدثًا.
يبني التغيير في المصدر الأعلى عرض Exhibit باستخدام مساعدات HTML تُرمِّز نص الاسم المستعار وقيم السمات في سياقاتها المعنية.
python poc.py TABLE FIELD_ONE FIELD_TWO
يطبع السكربت استعلام Cargo Exhibit مع علامة DOM غير ضارة. أضفه فقط إلى صفحة اختبار مصرَّح لك بتحريرها، وراقب عرض Exhibit المُصيَّر، ثم أزله بعد ذلك.
يصنّف وصف CVE العام حاليًا هذه المشكلة على أنها XSS انعكاسي. يصف التقرير المُقدَّم استعلامًا محفوظًا في محتوى صفحة قابل للتحرير ويُستثار عند عرض الصفحة لاحقًا. يصف هذا التقرير ذلك السيناريو المخزَّن دون تغيير سجل CVE.