PT-2026-48810

CVE-2026-48062

·

تاريخ النشر

2026-06-11

·

تاريخ التحديث

2026-07-20

الوصف من

CVSS 3.1
9.8
حرجة
المقاييسAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات CodeIgniter الأقدم من 4.7.3
الوصف
توجد ثغرة تسمح بتجاوز عملية التحقق من صحة الملفات المُحمَّلة في القاعدة ext in الموجودة في الملف system/Validation/StrictRules/FileRules.php. تقوم القاعدة بالتحقق بشكل غير صحيح من الامتداد المفترض المستمد من MIME بدلاً من الامتداد الفعلي لاسم الملف المقدم من العميل. وهذا يسمح للمهاجم بتحميل ملف بامتداد قابل للتنفيذ، مثل .php، يحتوي على محتوى يحاكي نوع ملف مسموح به (مثل GIF)، وبالتالي يتجاوز عملية التحقق من الصحة. إذا كان التطبيق يقبل عمليات التحميل التي يتحكم فيها المستخدم، ويعتمد على ext in للتحقق من صحة الامتداد، ويحفظ الملفات باستخدام اسم الملف الأصلي المقدم من العميل عبر $file->move($path)، ويخزنها في دليل يمكن الوصول إليه عبر الويب حيث يتم تمكين تنفيذ البرامج النصية، فقد يؤدي ذلك إلى تنفيذ تعليمات برمجية عشوائية. تم تحديد أكثر من 14,800 حالة قد تكون متأثرة عبر FOFA خلال العام الماضي.
التوصيات
قم بالترقية إلى الإصدار 4.7.3 أو أحدث.
احفظ الملفات المُحمَّلة خارج جذر الويب العام، ويفضل أن يكون ذلك ضمن writable/uploads.
استخدم $file->store() أو $file->move($path, $file->getRandomName()) بدلاً من الاحتفاظ باسم الملف الأصلي.
قم بتعطيل تنفيذ البرامج النصية في أي دليل تحميل عام.
تحقق يدويًّا من امتداد اسم الملف الخاص بالعميل قبل نقل الملف.
ارفض الملفات عندما لا يكون $file->getClientExtension() موجودًا في القائمة المسموح بها أو لا يتطابق مع $file->guessExtension().
قابلية الاستغلال
استغلال
إصلاح
التأثيرات
المورّدون
المنتجات المتأثرة
المعرّفات ذات الصلة
GHSA-2GR4-PPC7-7MHX
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾