22 أكتوبر 2026 · آخر تحديث: 23 أكتوبر 2026
تم رصد ثغرتين أمنيتين حرجتين في برمجية PHP تحملان الرقمين CVE-2026-109618 وCVE-2026-109619. وتُعرف هاتان الثغرتان إعلاميًا باسم PHP2Shell، ويمكن أن تؤديا إلى تنفيذ التعليمات البرمجية عن بُعد (RCE) على الخادم عبر طلب ويب مُعدّ خصيصًا، دون الحاجة إلى مصادقة.
أعلن مشروع PHP أن جميع تثبيتات PHP التي تخدم طلبات الويب معرّضة للخطر: PHP-FPM وApache mod_php وphp-cgi وFrankenPHP وLiteSpeed. وأعلى درجات الخطورة تكون في الأنظمة التي تستخدم Apache mod_php. وأفادت بعض شركات الأمن بأنها رصدت محاولات استغلال، بما في ذلك قبل الإعلان العلني عن الثغرتين. لا تؤجلوا التحديث.
إصدارات PHP التي عولجت فيها الثغرات
تمت معالجة الثغرتين في الإصدارات التالية: 8.2.35 و8.3.36 و8.4.27 و8.5.12. يمكن لتوزيعات Linux تطبيق التصحيح الأمني دون تغيير رقم الإصدار؛ لذلك لا تكتفوا بالنظر إلى رقم الإصدار، بل راجعوا أيضًا سجل التغييرات الخاص بالحزمة (موضح أدناه).
اعرفوا أولًا إصدار PHP الذي تستخدمونه. شغّلوا الأمر php -v في سطر الأوامر. قد يختلف إصدار PHP الذي يشغّل موقعكم عن الإصدار الظاهر في سطر الأوامر؛ وللتأكد، تحققوا أيضًا من لوحة إدارة الخادم أو من صفحة phpinfo().
لخوادم Linux (Debian وUbuntu)
- حدّثوا قائمة الحزم:
sudo apt update
- ثبّتوا التحديثات:
sudo apt upgrade
إذا أردتم تحديث حزم PHP فقط (استبدلوا رقم الإصدار برقم إصداركم):
sudo apt install --only-upgrade php8.3-fpm php8.3-cli php8.3-common
- أعيدوا تشغيل الخادم. يبدأ عمل إصدار PHP المحدَّث بعد إعادة تشغيل الخادم. تتوقف الخدمات على الخادم لفترة وجيزة أثناء إعادة التشغيل؛ لذا نفّذوا ذلك في وقت مناسب.
sudo reboot
- تحققوا من تطبيق التصحيح:
php -v
zcat /usr/share/doc/php8.3-common/changelog.Debian.gz | grep -E "CVE-2026-10961[89]"
يبحث الأمر الثاني في سجل تغييرات الحزمة عن رقمَي CVE؛ فإذا طُبّق التصحيح يظهر السطر. وإذا لم يكن إصدار PHP لديكم 8.3، فاكتبوا إصداركم بدلًا من 8.3 في الأمر.
لخوادم Linux (RHEL وAlmaLinux وRocky Linux)
sudo dnf upgrade --refresh 'php*'
sudo reboot
إذا كنتم تستخدمون مستودع Remi (rpms.remirepo.net)، فبحسب إعلان مشروع PHP لن يُنشر التحديث في هذا المستودع فورًا؛ فانتقلوا إلى حزم التوزيعة نفسها أو قوموا ببناء PHP من الشيفرة المصدرية.
لخوادم Windows وأجهزة الكمبيوتر
- تحققوا من إصداركم: شغّلوا الأمر
php -vفي موجه الأوامر أو في PowerShell. - نزّلوا الإصدار المُصحَّح: من صفحة تنزيل php.net لنظام Windows نزّلوا الإصدار المُصحَّح للفرع الذي تستخدمونه (8.2.35 أو 8.3.36 أو 8.4.27 أو 8.5.12) بصيغة x64. إذا كنتم تستخدمون FastCGI مع IIS فاختاروا إصدار Non Thread Safe (NTS)، وإذا كنتم تشغّلونه كوحدة نمطية في Apache فاختاروا إصدار Thread Safe (TS). تتطلب هذه النسخ المبنية حزمة Visual C++ 2015–2022 Redistributable.
- انسخوا مجلد PHP الحالي احتياطيًا (بما في ذلك
php.iniوالامتدادات التي تستخدمونها)، ثم فكّوا ضغط الإصدار الجديد، وانقلوا إعداداتphp.iniوالامتدادات (DLL) بما يتوافق مع الإصدار الجديد. - أعيدوا تشغيل خادم الويب: في IIS شغّلوا الأمر
iisresetفي موجه أوامر مفتوح بصلاحيات المسؤول (أو أعيدوا تدوير مجمّع التطبيقات المعني). وفي Apache أعيدوا تشغيل خدمة Apache من خدمات Windows. - تحققوا: يجب أن يُظهر الأمر
php -vوصفحةphpinfo()أن الإصدار قد تم تحديثه.
تأتي الحزم الجاهزة مثل XAMPP أو WampServer أو Laragon بنسخة PHP خاصة بها. ثبّتوا أحدث إصدار من الحزمة يحدّث PHP، أو استبدلوا مجلد PHP داخل الحزمة باتباع الخطوات أعلاه. وإذا كنتم تستخدمون هذه الحزم على خادم يمكن الوصول إليه عبر الإنترنت، فاجعلوا التحديث أولوية.
لمستخدمي PHP 8.1 والإصدارات الأقدم
لم تعد الإصدارات PHP 8.1 والأقدم تتلقى تحديثات رسمية من مشروع PHP. تقدّم بعض توزيعات Linux ومزوّدي الدعم طويل الأمد (LTS) إصدارات تصحيح خاصة بهم؛ فاستوثقوا من مزوّدكم. وإذا لم يتوفر تصحيح، فـانتقلوا إلى إصدار مدعوم من PHP. كما نشر مشروع PHP فروع تصحيح دنيا لإصدارات PHP 7.4 و8.0 و8.1 موجّهة لمن يبنون من الشيفرة المصدرية؛ وهذا لا يغني عن تحديث حزمة مُدار.
إجراءات مؤقتة إذا تعذّر التحديث فورًا
بحسب مشروع PHP، تقلّل هذه الإجراءات من مسارات هجوم معينة فقط ولا تجعل النظام آمنًا. الحل الدائم هو التحديث.
- اضبطوا الإعداد
session.upload_progress.enabled=0في php.ini أو في مجمّع FPM أو في إعدادات الخادم (ini_set()و.user.iniغير كافيين). وفي PHP 8.5 اضبطوا أيضًاfatal_error_backtraces=0. - اضبطوا القيمة
memory_limit=-1بطريقة لا تستطيع التطبيقات تغييرها (في مجمّع FPM باستخدامphp_admin_value)، وأبقوا قيمةpost_max_sizeمنخفضة (8M إذا لم تكن هناك حاجة إلى رفع ملفات، و32M إذا كانت هناك حاجة؛ ويجب أن تبقىupload_max_filesizeأقل منها). - بعد تغيير الإعدادات، أعيدوا تشغيل جميع عمليات PHP.
تحققوا بعد التحديث
لا يُظهر التحديث ما إذا كانت الثغرة قد استُغلت سابقًا. تفيد شركات الأمن بأن محاولات الاستغلال تعود إلى ما قبل 17 أكتوبر 2026. ابتداءً من هذا التاريخ، افحصوا سجلات خادم الويب بحثًا عن طلبات غير معتادة، وافحصوا مجلدات الويب بحثًا عن ملفات جديدة غير متوقعة، وابحثوا عن عمليات لا تعرفونها. وإذا ساوركم أي شك، فاعزلوا النظام عن الشبكة واطلبوا دعم مختصين.
حدّثوا تطبيق Q-smart لديكم أيضًا
بعد تحديث PHP، حدّثوا تطبيق Q-smart لديكم أيضًا؛ فالإصدار الحالي من Q-smart يعمل بتوافق مع PHP الجديد. تحديثات Q-smart مجانية، ونوفّر دعم التحديثات مدى الحياة. لتحديث تطبيقكم، اطلبوا المساعدة من فريق الدعم الفني لدينا.
الدعم الفني
إذا كنتم لا ترغبون في إجراء هذا التحديث بأنفسكم، أو تحتاجون إلى مساعدة على الخوادم التي تعمل عليها أنظمة Q-smart لديكم، أو لستم متأكدين مما إذا كانت أنظمتكم متأثرة، فـتواصلوا مع شركتنا للحصول على الدعم الفني: صفحة اتصل بنا.
المصادر: الإعلان الرسمي لمشروع PHP، “Security advisory: Critical remote code execution vulnerabilities, update now“ (21 أكتوبر 2026). تنزيلات الإصدارات: php.net/downloads.php.
