In PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, some functions, including urldecode(), pass signed char to ctype functions (like isxdigit()). On the systems with default signed char and optimized table-lookup ctype functions - such as NetBSD - this can lead to accessing array with negative offset, which can trigger a denial of service.
PHP versions 8.2 through 8.5 contain a vulnerability where urldecode() and similar functions pass signed char to ctype functions, causing negative array offsets on systems like NetBSD. This can lead to denial of service attacks affecting web applications using vulnerable PHP versions.
تحتوي إصدارات PHP 8.2 و8.3 و8.4 و8.5 على ثغرة في معالجة الأحرف الموقعة حيث تمرر دوال مثل urldecode() قيماً موقعة إلى دوال ctype. على الأنظمة التي تستخدم جداول بحث محسّنة مثل NetBSD، يمكن أن يؤدي هذا إلى الوصول إلى المصفوفات برموز سالبة. يمكن للمهاجمين استغلال هذا لتنفيذ هجمات حرمان الخدمة على تطبيقات الويب.
إصدارات PHP من 8.2 إلى 8.5 تحتوي على ثغرة حيث تمرر دوال مثل urldecode() قيم char موقعة إلى دوال ctype، مما يسبب وصول سالب للمصفوفات على أنظمة مثل NetBSD. يمكن أن يؤدي هذا إلى هجمات حرمان الخدمة على تطبيقات الويب التي تستخدم إصدارات PHP المعرضة للخطر.
Immediately upgrade PHP to version 8.2.31, 8.3.31, 8.4.21, 8.5.6 or later. If immediate upgrade is not possible, implement input validation and sanitization for URL parameters, and consider using Web Application Firewalls to filter malicious requests. Monitor system resources for unusual denial of service patterns.
قم بترقية PHP فوراً إلى الإصدار 8.2.31 أو 8.3.31 أو 8.4.21 أو 8.5.6 أو أحدث. إذا لم يكن الترقية الفورية ممكنة، قم بتطبيق التحقق من صحة المدخلات وتنظيفها لمعاملات URL، واستخدم جدران حماية تطبيقات الويب لتصفية الطلبات الضارة. راقب موارد النظام للكشف عن أنماط حرمان الخدمة غير العادية.