
في 21 أكتوبر 2026 أصدر مشروع PHP تحديثات أمنية طارئة لثغرتين حرجتين، CVE-2026-109618 وCVE-2026-109619، وكلتاهما بتقييم CVSS 9.2. ويمكن أن تسمحا بتنفيذ تعليمات برمجية عن بُعد دون مصادقة: أي أن المهاجم الذي يستطيع إرسال طلب ويب إلى خادمك قد يتمكن من تشغيل تعليماته البرمجية الخاصة عليه، دون تسجيل الدخول. ونصيحة فريق PHP مختصرة: حدِّث الآن.
يشرح هذا الدليل بلغة بسيطة من المتأثر، وما الإصدارات التي تصلح المشكلة، وكيف تتحقق من خوادمك وتحدّثها، وماذا تفعل إذا لم تتمكن من التحديث اليوم. كل ما ورد هنا مبني على إعلانات PHP الرسمية؛ راجعها للاطلاع على أحدث التفاصيل.
ما الذي حدث، بكلمات بسيطة
تشغّل PHP جزءًا كبيرًا من الويب: WordPress وWooCommerce وLaravel وDrupal وMagento وعددًا لا يُحصى من أنظمة الأعمال المخصصة. وتقع الثغرتان داخل PHP نفسها، لا في تطبيق بعينه، ولهذا تؤثران في عدد كبير من المواقع في وقت واحد.
- CVE-2026-109618، "تنفيذ تعليمات برمجية عن بُعد عبر تلف ناتج عن نفاد الذاكرة (OOM)": عندما تنفد ذاكرة PHP في لحظة غير مناسبة، قد تبقى بيانات الطلب مُعدّة بشكل ناقص، ثم قد تتعامل خطوة التنظيف مع هذه البيانات التالفة على أنها صالحة.
- CVE-2026-109619، "تنفيذ تعليمات برمجية عن بُعد عبر حالة عامة قديمة": قد تبقى بيانات داخلية من طلب ما بعد تحرير ذاكرتها، وقد يستخدمها طلب لاحق تعالجه العملية نفسها قبل إعادة تعيينها.
بحسب PHP، فإن جميع تثبيتات PHP التي تخدم طلبات الويب معرّضة للخطر، بما في ذلك PHP-FPM وApache مع mod_php وphp-cgi وFrankenPHP وLiteSpeed. ويكون الخطر أعلى مع Apache مع mod_php، إذ يقول فريق PHP إنه تم إثبات استغلال يُطلق فيه طلبٌ غير مصادق عليه الهجومَ قبل تشغيل أي جزء من التعليمات البرمجية لتطبيقك. وهذا يعني أن التطبيق المكتوب جيدًا لا يحميك: يجب أن يتم الإصلاح في PHP نفسها.
ما الإصدارات التي تصلح الثغرة
| فرع PHP لديك | حدِّث إلى هذا الإصدار على الأقل | ملاحظات |
|---|---|---|
| 8.5 | 8.5.12 | في 8.5 يوجد إعداد مؤقت إضافي (انظر أدناه). |
| 8.4 | 8.4.27 | |
| 8.3 | 8.3.36 | |
| 8.2 | 8.2.35 | ينتهي دعم PHP 8.2 في 31 ديسمبر 2026. خطِّط للترقية. |
| 8.1 و8.0 و7.4 والأقدم | لا يوجد إصدار رسمي | لم تعد مدعومة. انظر إصدارات PHP القديمة. |
| إصدارات 8.6 التجريبية | 8.6.0 RC4 | ليست لبيئة الإنتاج. |
الخطوة 1: تحقّق من إصدار PHP الذي يستخدمه موقعك فعليًا
كثير من الخوادم مثبّت عليها أكثر من إصدار PHP. والإصدار الذي تراه في سطر الأوامر ليس دائمًا هو الذي يخدم موقعك، لذا تحقّق من الإصدار الذي يعمل على الويب.
- لوحة تحكم الاستضافة: في cPanel ابحث عن MultiPHP Manager أو Select PHP Version؛ وفي Plesk يظهر الإصدار ضمن PHP Settings الخاصة بالنطاق.
- WordPress: انتقل إلى أدوات → صحة الموقع → معلومات → الخادم.
- Laravel أو أي تطبيق PHP: صفحة مؤقتة تحتوي على
<?php phpinfo();تعرض الإصدار الدقيق وواجهة الخادم المستخدمة (مثل FPM/FastCGI أو Apache 2.0 Handler، وهي mod_php). احذفها مباشرة بعد ذلك. - سطر الأوامر:
php -v، ولـ PHP-FPMphp-fpm8.3 -v(استخدم رقم إصدارك).
مهم: توزيعات Linux مثل Ubuntu وDebian وRed Hat ومزوّدو الدعم طويل الأمد (LTS) لديها كثيرًا ما يصلحون الثغرات الأمنية دون تغيير رقم الإصدار الرئيسي. ويقول فريق PHP إن التوزيعات تلقّت التصحيحات مسبقًا. إذا كانت PHP لديك من توزيعتك، فراجع النشرة الأمنية لذلك المزوّد أو سجل تغييرات الحزمة بحثًا عن رقمي CVE بدلًا من مقارنة أرقام الإصدارات.
الخطوة 2: تحديث PHP
الاستضافة المشتركة أو المُدارة
شركة الاستضافة هي التي تتحكم في PHP. كثير منها سيطبّق التصحيح تلقائيًا؛ اطلب من مزوّد الاستضافة أن يؤكد أن إصدار PHP لديك يتضمن إصلاحات CVE-2026-109618 وCVE-2026-109619. وإذا كنت تستخدم PHP 8.1 أو أقدم، فاطلب الانتقال إلى إصدار مدعوم (8.3 أو 8.4 خيار آمن لمعظم المواقع) واختبر موقعك بعد ذلك.
خادمك الخاص بنظام Ubuntu أو Debian
- ثبّت التحديثات:
sudo apt update && sudo apt upgrade. إذا كنت تستخدم مستودع PHP من طرف ثالث، فالأمر نفسه يجلب حزمه الجديدة. - أعد تشغيل PHP حتى تتوقف العمليات القديمة:
sudo systemctl restart php8.3-fpm(بحسب إصدارك)، أوsudo systemctl restart apache2إذا كنت تستخدم mod_php. - تحقّق مرة أخرى (الخطوة 1) واختبر الصفحات الرئيسية والنماذج وتسجيل الدخول والمدفوعات.
Red Hat وRocky وAlmaLinux وCentOS Stream
شغّل sudo dnf upgrade (أو الأمر الخاص بوحدة PHP أو المستودع لديك)، ثم أعد تشغيل php-fpm أو httpd واختبر.
Docker والحاويات
تحديث الخادم لا يكفي: أعد بناء الصور (images) على صورة PHP أساسية مصحّحة (مثل إصدار جديد من php:8.3-fpm أو php:8.4-apache يتضمن 8.3.36 أو 8.4.27)، وادفعها، وأعد النشر، وتأكد من عدم وجود حاويات قديمة لا تزال تعمل.
Windows
نزّل الإصدار المصحّح من صفحة تنزيلات PHP، واستبدل الملفات القديمة، وأعد تشغيل IIS أو خادم الويب لديك.
أيًّا كان الإعداد، أعد تشغيل كل عمليات PHP. فعمليات PHP-FPM أو Apache القديمة تواصل تشغيل الكود المعرّض للثغرة حتى تتم إعادة تشغيلها.
إذا لم تتمكن من التحديث اليوم
يؤكد فريق PHP بوضوح أن التحديث وحده هو الحل الكامل. الإعدادات أدناه تقلّل بعض مسارات الهجوم لكنها لا تجعل الخادم آمنًا. طبّقها في php.ini أو مجمّع FPM أو إعدادات خادم الويب، وليس عبر ini_set() أو .user.ini، ثم أعد تشغيل كل العمليات.
- بالنسبة إلى CVE-2026-109619: اضبط
session.upload_progress.enabled=0. وعلى PHP 8.5 اضبط أيضًاfatal_error_backtraces=0. - بالنسبة إلى CVE-2026-109618: اضبط
memory_limit=-1بطريقة لا تستطيع التطبيقات تجاوزها (مثلًا عبرphp_admin_value)، واضبط قيمة منخفضة لـpost_max_size: 8M إذا لم تكن بحاجة إلى رفع الملفات، و32M إذا كنت بحاجة إليه، مع جعلupload_max_filesizeأقل منها. استخدم حدود الذاكرة الخاصة بالحاوية أو cgroup كحدّ أمان، لكن لا تستخدم RLIMIT_AS أو RLIMIT_DATA. - أزل الإعدادات غير الصالحة أو المهملة التي تجعل PHP تطبع تحذيرات في بداية كل طلب، وأصلح الأخطاء ومهلات الانتظار التي يمكن للمهاجم أن يتسبب فيها. إخفاء التحذيرات لا يفيد.
قد تؤثر هذه الإعدادات في طريقة عمل تطبيقك، خاصة رفع الملفات. اختبرها، واعتبرها جسرًا مؤقتًا قصيرًا إلى التحديث الحقيقي.
متابعة 23 أكتوبر: تقدّم رفع الملفات في الجلسة
في 23 أكتوبر نشر فريق PHP إشعارًا معلوماتيًا حول مشكلة مرتبطة أقل احتمالًا (CVE-2026-115560). وهي تؤثر فقط في التطبيقات التي تغيّر session.serialize_handler أثناء التشغيل باستخدام ini_set() بينما تكون ميزة تقدّم رفع الملفات في الجلسة مفعّلة. ويقترح فريق PHP الإبقاء على session.upload_progress.enabled=0 حتى إصدار الإصلاحات الدوري التالي. إذا كنت قد طبّقته بالفعل في 21 أكتوبر، فأبقِه كما هو.
هل تستخدم PHP 8.1 أو 8.0 أو 7.4 أو أقدم؟
لم تعد هذه الإصدارات تتلقى تحديثات من مشروع PHP، لذا لا يوجد إصدار رسمي مصحّح. ونظرًا لخطورة الثغرة، نشر فريق أمن PHP تصحيحات مصدرية مُنقولة (backports) بالحد الأدنى للإصدارات 7.4 و8.0 و8.1 لمن يبنون PHP بأنفسهم، كما يوفّر بعض مزوّدي Linux ومزوّدي الدعم طويل الأمد (LTS) حزمًا تتضمن هذه التصحيحات. والحل الصحيح لمعظم الشركات هو الترقية إلى PHP 8.3 أو 8.4. وهذا يعني عادةً تحديث إطار العمل والإضافات وبعض الكود، لذا خطِّط لذلك بدلًا من التسرّع فيه على موقع مباشر:
- انسخ الموقع إلى خادم تجريبي (staging).
- حوّل البيئة التجريبية إلى إصدار PHP الجديد وشغّل اختباراتك، أو تصفّح الصفحات الأساسية إن لم تكن لديك اختبارات.
- أصلح الكود المهمل، وحدّث حزم Composer والإضافات.
- حوّل بيئة الإنتاج في ساعة هادئة، مع نسخة احتياطية وطريقة للرجوع.
قائمة تحقق سريعة
- أحصِ كل خادم وموقع وحاوية تعمل بـ PHP، بما في ذلك البيئات التجريبية والمواقع القديمة المنسية.
- تحقّق من إصدار PHP وطريقة تثبيته (الاستضافة، حزمة التوزيعة، صورة Docker، المصدر).
- حدِّث إلى 8.5.12 أو 8.4.27 أو 8.3.36 أو 8.2.35 أو إلى الحزمة المصحّحة من مزوّدك.
- أعد تشغيل كل عمليات PHP وخوادم الويب.
- تأكّد من الإصدار أو التصحيح، ثم اختبر تسجيل الدخول والنماذج ورفع الملفات والمدفوعات.
- إذا لم تتمكن من التحديث اليوم، فطبّق الإعدادات المؤقتة وحدّد موعدًا لإكمال التحديث.
- خطِّط للانتقال من PHP 8.1 أو الأقدم، ومن 8.2 قبل 31 ديسمبر 2026.
كيف يمكن أن تساعدك UnlockLive
نبني أنظمة PHP وLaravel وWordPress ونصونها منذ عام 2008. تتحقق خدمة التحديث الأمني الطارئ لـ PHP لدينا من كل خوادمك، وتطبّق الإصلاح بالطريقة الصحيحة لإعدادك (استضافة، VPS، cPanel أو Docker)، وتعيد تشغيل كل شيء، وتختبر الموقع، وترسل إليك تقريرًا مكتوبًا قصيرًا. وإذا كنت تستخدم إصدار PHP قديمًا، يمكننا ترقيتك بأمان على نسخة تجريبية أولًا.
لست متأكدًا إن كنت متأثرًا؟ أرسل إلينا عنوان موقعك أو احجز مكالمة مجانية مدتها 30 دقيقة، وسيخبرك أحد مهندسينا بما يجب فعله.
الأسئلة الشائعة
هل يتأثر موقعي بثغرة PHP الجديدة (أكتوبر 2026)؟
إذا كان موقعك يعمل بـ PHP ولم يُحدَّث بعد إلى 8.5.12 أو 8.4.27 أو 8.3.36 أو 8.2.35 أو إلى حزمة من المزوّد تتضمن إصلاحات CVE-2026-109618 وCVE-2026-109619، فافترض أنه متأثر. يقول فريق PHP إن جميع التثبيتات التي تخدم طلبات الويب معرّضة للخطر، بما في ذلك PHP-FPM وApache mod_php وphp-cgi وFrankenPHP وLiteSpeed.
هل يُصلح تحديث WordPress أو Laravel الثغرة؟
لا. الثغرتان موجودتان في PHP نفسها، لذا فإن تحديث WordPress أو الإضافات أو Laravel لا يصلحهما. يجب عليك أو على مزوّد الاستضافة تحديث PHP وإعادة تشغيلها.
لا يزال خادمي يعرض إصدار PHP القديم بعد التحديث. هل هو آمن؟
قد يكون كذلك. توزيعات Linux مثل Ubuntu وDebian وRed Hat كثيرًا ما تصلح الثغرات الأمنية دون تغيير رقم الإصدار الرئيسي. راجع النشرة الأمنية لمزوّدك أو سجل تغييرات الحزمة بحثًا عن رقمي CVE، وتأكد من أنك أعدت تشغيل PHP-FPM أو Apache.
هل يوجد حل مؤقت إذا لم أتمكن من التحديث اليوم؟
يذكر فريق PHP إعدادات مؤقتة، مثل session.upload_progress.enabled=0، وقيمة منخفضة لـ post_max_size، وmemory_limit=-1 مضبوطة على مستوى الخادم، لكنه يؤكد أن التحديث وحده هو الحل الكامل. استخدمها فقط كجسر مؤقت قصير واختبرها، لأنها قد تؤثر في رفع الملفات.
ماذا لو كنت أستخدم PHP 7.4 أو 8.0 أو 8.1؟
لا تحصل هذه الإصدارات على إصدار رسمي مصحّح. نشر فريق PHP تصحيحات مصدرية مُنقولة بالحد الأدنى، ويوفّر بعض المزوّدين حزمًا مصحّحة، لكن الحل الآمن على المدى الطويل هو الترقية إلى PHP 8.3 أو 8.4 بعد الاختبار على نسخة تجريبية.
كم يستغرق تحديث PHP الطارئ؟
لإصدار PHP مدعوم على خادم عادي، يستغرق التصحيح وإعادة التشغيل والاختبار عادةً من ساعة إلى ساعتين لكل خادم. أما الترقية من إصدار PHP قديم فتستغرق وقتًا أطول، لأن الكود والإضافات قد تحتاج إلى تعديلات.
كيف يمكننا المساعدة
- تحديث أمني عاجل لـ PHPنصحّح ثغرات تنفيذ التعليمات البرمجية عن بُعد في PHP لشهر أكتوبر 2026 (CVE-2026-109618 وCVE-2026-109619) على خوادمك، ونختبر موقعك، ونرقّي إصدارات PHP القديمة بأمان.
- خدمات الأمن السيبراني وأمن الذكاء الاصطناعياختبار الاختراق، ومراقبة SOC، والجاهزية لمعايير SOC 2 / ISO 27001 / PCI DSS / HIPAA، والعمل في المجالات الناشئة مثل الاختبار الهجومي لنماذج LLM وأمن وكلاء الذكاء الاصطناعي.
- خدمات AWS والسحابة وDevOpsبنية AWS وAzure وGCP والترحيل وKubernetes وTerraform وتحسين التكاليف عبر FinOps وSRE على مدار الساعة — وعادةً ما يتراوح خفض فاتورة السحابة بين 25 و40%.
تحدثوا إلى مهندس حول مشروعكم
أخبرونا بما تبنونه. نردّ خلال يوم عمل واحد برأي صريح حول النطاق والنهج والجهد المطلوب.
احجزوا مكالمة استراتيجية مجانيةكتبه الفريق الهندسي في UnlockLive IT. تعمل UnlockLive IT Limited مع العملاء عبر مقرها الرئيسي في تورنتو، وتقدم الأعمال الهندسية من مركز التسليم في دكا. من نحن