حذّرت شركة أمن WordPress Patchstack في 30 أكتوبر 2026 من أن ثغرة فك ضغط Brotli المعروفة بالمعرّف CVE-2026-111497 قد تصل إلى بعض مواقع WordPress عبر طلبات HTTP الصادرة من الموقع، بما في ذلك مسار Pingback في xmlrpc.php. النقطة المهمة هنا أن الخلل ليس في نواة WordPress نفسها؛ بل في مكتبة Brotli التي قد يوفرها نظام التشغيل ويستخدمها libcurl عند فك استجابات مضغوطة.
ما طبيعة ثغرة CVE-2026-111497؟
الخلل عبارة عن كتابة خارج حدود الذاكرة داخل وحدة فك ضغط Brotli عند التعامل مع تدفق بيانات مضغوط ومشوّه. وتشمل الإصدارات المتأثرة upstream النطاق من 1.0.3 حتى 1.2.0، بينما تتضمن الإصدارات التي تحمل الإصلاح 1.0.10 و1.1.1 و1.2.1. وتصف صفحة Ubuntu الأمنية الثغرة بأنها حرجة بدرجة CVSS 9.2 وفق CVSS 4.0، مع اختلاف تقييم بعض الجهات لطريقة الاستغلال والأثر.
يمكن أن يؤدي استغلال الخلل إلى إفساد حالة الذاكرة، أو كشف بيانات حساسة، أو تعطيل العملية التي تنفذ فك الضغط، مع احتمال تنفيذ تعليمات برمجية في ظروف معينة. لكن يجب عدم الخلط بين الإمكانية النظرية وبين ما تم إثباته في مسار WordPress تحديدًا: تقرير Patchstack يوضح أن الأبحاث المنشورة أثبتت تعطل عامل PHP أو استهلاك المعالج في هذا المسار، ولا يعرض سلسلة تنفيذ أوامر عن بُعد موثوقة على بيئة PHP-FPM أو Apache التقليدية.
كيف يمكن أن تصل المشكلة إلى موقع WordPress؟
يوضح Patchstack أن WordPress لا يضم مكتبة Brotli الخاصة به ضمن النواة؛ بل يعتمد على المكتبات المتاحة في النظام عند تنفيذ طلبات HTTP الصادرة. ويظهر مسار محتمل عندما يستقبل xmlrpc.php طلب Pingback يتضمن عنوانًا خارجيًا يسيطر عليه المهاجم، ثم يطلب WordPress ذلك العنوان. إذا أعاد الخادم الخارجي استجابة Brotli مشوّهة، فقد يتعامل معها libcurl ويفك ضغطها قبل أن تصل البيانات إلى طبقة PHP التي يتعامل معها الموقع.
ولا يقتصر الأمر على XML-RPC؛ فقد تصل مكتبة فك الضغط نفسها إلى بيانات خارجية عبر إضافات أو قوالب تنفذ طلبات باستخدام wp_remote_get() أو wp_safe_remote_get() عندما تسمح للمستخدم بإدخال عنوان يجري جلبه من الخادم. لذلك فإن تعطيل Pingback قد يغلق مسارًا واحدًا، لكنه لا يعالج المكتبة المصابة ولا يغلق بالضرورة كل مسارات الطلبات الصادرة.
لماذا لا يكفي تحديث WordPress أو الإضافات؟
لأن المكوّن المتأثر قد يكون حزمة نظام مثل libbrotli أو نسخة مدمجة داخل صورة حاوية أو برنامج آخر. تحديث WordPress أو تثبيت إصدار أحدث من إضافة لا يحدّث تلقائيًا مكتبة النظام التي يستخدمها cURL. وتؤكد صفحة Ubuntu الأمنية وجود إصلاحات موزعة بحسب إصدار النظام؛ كما أن بعض التوزيعات تعيد إدراج التصحيح داخل حزمة تحمل رقم إصدار upstream قديمًا نسبيًا.
ما الإجراءات العملية لأصحاب المواقع ومديري الخوادم؟
- إذا كانت الاستضافة مُدارة، اطلب من مزودها تأكيد تحديث حزمة Brotli أو المكتبة التي يستخدمها cURL إلى إصدار يتضمن التصحيح.
- على الخوادم الخاصة، طبّق تحديثات الأمان الصادرة عن التوزيعة وتحقق من حالة الحزمة نفسها، لا من رقم الإصدار upstream وحده؛ فقد تكون التوزيعة قد أضافت التصحيح دون تغيير الرقم الرئيسي.
- إذا كان الموقع يعمل داخل Docker أو صورة حاوية، حدّث الحزمة داخل الصورة ثم أعد بناء الصورة ونشرها؛ تحديث المضيف وحده لا يصلح بالضرورة نسخة مكتبة مضمّنة داخل الحاوية.
- راجع الحاجة الفعلية إلى Pingback وXML-RPC، وأغلق المسار غير المستخدم على مستوى الخادم أو أزل طريقة Pingback، باعتبار ذلك تخفيفًا لمسار محدد لا بديلًا عن تحديث المكتبة.
- راجع الإضافات والقوالب التي تجلب عناوين URL يرسلها الزوار أو المستخدمون، لأنها قد تفتح مسارات أخرى إلى مكتبة فك الضغط.
على سبيل المثال، تسجل صفحة Ubuntu أن إصلاح حزمة Brotli متاح في Ubuntu 24.04 LTS ضمن الحزمة 1.1.0-2ubuntu0.1. لا ينبغي تعميم هذا الرقم على Debian أو Alpine أو بقية إصدارات Ubuntu؛ المرجع الصحيح هو نشرة الأمان الخاصة بالتوزيعة والإصدار المثبتين على الخادم.
الخلاصة
هذه ليست ثغرة تُحل بتحديث إضافة WordPress فقط. نقطة المعالجة الأساسية هي مكتبة Brotli الموجودة في بيئة تشغيل الخادم أو الحاوية. ويظل تعطيل Pingback أو حجب XML-RPC إجراءً لتقليل أحد المسارات، بينما يتطلب الإصلاح الفعلي تحديث المكتبة المتأثرة والتحقق من أن الخدمة تستخدم النسخة المصححة.
المصادر الأصلية والفنية
تحليل Patchstack لمسار الثغرة في WordPress – 30 أكتوبر 2026
نشرة Ubuntu الأمنية للثغرة CVE-2026-111497
إصدارات Node.js الأمنية التي تتضمن إصلاح Brotli
سجل الثغرة في قاعدة NVD
اكتشاف المزيد من lightweb2
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.