في 21 أكتوبر 2026، أعلنت PHP عن ثغرتين حرجتين قد تتيحان تنفيذ التعليمات البرمجية عن بُعد دون مصادقة. وفي اليوم نفسه، أصدرت تحديثات للفروع 8.5 و8.4 و8.3 و8.2، وأوصت المستخدمين بالتحديث دون تأخير. وقد تكون عمليات التثبيت التي تتولى طلبات الويب عرضة للخطر، بما في ذلك PHP-FPM وApache mod_php وphp-cgi وFrankenPHP وLiteSpeed، وفقًا لما أعلنته PHP.

الإصدارات التي تتضمن الإصلاحات هي PHP 8.5.12 و8.4.27 و8.3.36 و8.2.35. وتعالج هذه الإصدارات CVE-2026-109618، المرتبطة بتلف الحالة عند نفاد الذاكرة، وCVE-2026-109619، وهي ثغرة قد تؤدي إلى بقاء حالة طلب في عملية عاملة ثم استخدامها عند معالجة الطلب التالي. الإصدارات الأقدم من المذكورة متأثرة؛ أما PHP 8.1 والفروع الأقدم، فلم يعد المشروع يصدر لها تحديثات خاصة به، لذا ينبغي لمسؤولي هذه الأنظمة التحقق من توفر إصلاحات لدى مورّد التوزيعة أو مزوّد دعم طويل الأمد.
ثغرتان في دورة حياة طلب الويب
في حالة CVE-2026-109618، قد تتوقف معالجة الطلب بسبب نفاد الذاكرة قبل اكتمال تهيئة البيانات الداخلية. وقد يحاول PHP عند إنهاء المعالجة الوصول إلى حالة غير صالحة. ويذكر المطورون في النشرة الأمنية، ضمن أمثلة أخرى، حالات تتعلق بطلبات multipart واستنفاد حد الذاكرة. وبالنسبة إلى Apache mod_php، تأكد سيناريو تنشأ فيه المشكلة قبل تشغيل شيفرة التطبيق؛ كما تشير PHP إلى أن مستوى الخطر أعلى في هذا الإعداد.
تؤثر CVE-2026-109619 في الحالة التي تحتفظ بها العملية العاملة بين الطلبات. فإذا انتهت عملية بخطأ قبل تنظيف البيانات، تُحرر ذاكرة الطلب السابق، لكن يظل المرجع إليها قائمًا. وقد يصل طلب تالٍ يُعالج في العملية نفسها إلى الحالة القديمة قبل التهيئة المعتادة. وتوضح PHP في النشرة الأمنية للمشروع مسارات مؤكدة عبر عمليات التشخيص المبكرة ومعالجة تقدم تحميل الملفات؛ ويتوقف انطباق كل مسار على الإعداد والتطبيق والإضافات المستخدمة.
حصلت الثغرتان على تقييم 9.2 وفق CVSS 4.0. ووفقًا لـPHP، يشمل الأثر المؤكد تنفيذ التعليمات البرمجية بامتيازات عامل الويب. وتؤكد النشرة الأمنية وجود سيناريو HTTP كامل لهجوم على mod_php بسبب ثغرة نفاد الذاكرة؛ أما بالنسبة إلى PHP-FPM، فيعرض المصدر تحليلًا للشيفرة وشروط قابلية التأثر، لذا من المهم التمييز بين هذه المعلومات عند تقييم بيئة تشغيل بعينها.
ما الذي ينبغي للمسؤولين التحقق منه
ابدأوا بتحديد إصدارات PHP التي تتولى فعليًا حركة مرور الويب؛ فقد يعمل على الخادم نفسه أكثر من إصدار منفصل لواجهة سطر الأوامر أو FPM أو Apache، كما أن الحاويات وعُقد المجموعة تُحدَّث كلٌّ على حدة. ثبّتوا الإصدار المصحح الملائم لكل فرع مدعوم، أو حزمة مورّد يتأكد اشتمالها على التصحيح. ثم أعيدوا تشغيل جميع عمليات PHP العاملة وتحققوا من إصداراتها بعد إعادة التشغيل؛ فاستبدال الملفات من دون إعادة التشغيل يُبقي العمليات القديمة قيد العمل.
بالنسبة إلى PHP 8.1 والإصدارات الأقدم، تحققوا من حالة الدعم وتوفر إصلاح خلفي من التوزيعة أو مزوّد الدعم طويل الأمد. وإذا لم تتوفر حزمة كهذه، فخططوا للانتقال إلى فرع مدعوم. وتشير PHP إلى أن مورّدي توزيعات Linux تلقوا التصحيحات مسبقًا؛ وقد يختلف رقم إصدار الحزمة لديهم عن الإصدار الرسمي لـPHP، لذا ينبغي الرجوع إلى المعلومات التي تؤكد إدراج التصحيح نفسه.
قد تحدّ الإعدادات المؤقتة وعمليات ترشيح الطلبات من بعض مسارات الهجوم، لكن المشروع يصف التحديث بأنه الطريقة الوحيدة الكاملة لمعالجة المشكلتين. وتتمثل الأولوية العملية للفرق في حصر جميع عمليات الويب العاملة، وتثبيت الحزمة المصححة، وإعادة تشغيل العمليات، والتحقق من النتيجة على كل عقدة. وهذا ما يعالج الثغرات المؤكدة، بدلًا من الاعتماد على إعداد خادم الويب وحده.