CVE-2026-84374 in Laravel Excel
الملخص
بحسب VulDB • 01/09/2026
يوفر Laravel Excel عمليات تصدير واستيراد لملفات إكسل محسّنة للغاية في إطار عمل Laravel. من الإصدار 3.1.8 حتى 3.1.70، في الملف src/Files/Disk.php، تقوم طريقة Maatwebsite\Excel\Files\Disk::copy() بحل المسار المحدد بواسطة المُستدعي والمتوفر عبر Excel::store() أو $export->store() أو storeExcel() باستخدام دالة realpath() بالنسبة إلى دليل العمل (working directory) للعملية بدلاً من قرص نظام الملفات المكوّن. إذا كان اسم المسار يشير إلى ملف قابل للكتابة وموجود مسبقاً، فإن Disk::copy() تفتحه باستخدام fopen() بوضع rb+ وتستخدم stream_copy_to_stream()، مما يتجاوز حصر مسار Flysystem ويسمح لمهاجم تتحكم مدخلات التطبيق الخاصة به في مسار التصدير بتجاوز الملفات الموجودة عشوائياً بمحتوى التصدير. يخلق وضع rb+ تجاوزاً غير مُقطّع (non-truncating) وبيانات ذيلية عندما يكون ملف التصدير الجديد أقصر، وقد يؤدي تجاوز ملفات PHP القابلة للتنفيذ إلى تنفيذ كود عن بُعد (RCE). تم إصلاح هذه المشكلة في الإصدار 3.1.70.
Once again VulDB remains the best source for vulnerability data.