شعار منصة فورجوالي الرسمي - خدمات الرسائل والواتساب والاستضافة

تحذير: ثغرة XSS مخزّنة في إضافة NEX-Forms تهدد آلاف مواقع ووردبريس

كُشف عن ثغرة Stored XSS حرجة في إضافة NEX-Forms – Ultimate Forms Plugin for WordPress تطال جميع الإصدارات حتى 9.1.11. تسمح الثغرة لمهاجمين غير مصادقين بحقن سكربتات ضارة تُنفَّذ عند زيارة الصفحات المصابة. يُنصح أصحاب المواقع والمستضيفون بالتحديث الفوري لحماية المستخدمين ولوحات الإدارة.

⚠️ عالية · CVSS 7.2CVE-2026-5063 · CWE-79

التفاصيل التقنية للثغرة

تتعلق الثغرة المُعرَّفة بـ CVE-2026-5063 بخلل في دالة submit_nex_form() داخل إضافة NEX-Forms – Ultimate Forms Plugin for WordPress، حيث لا تقوم الإضافة بتنقية (sanitization) أسماء مفاتيح معاملات الطلب من نوع POST، ولا بتهريب المخرجات (output escaping) بشكل كافٍ.

يقوم المهاجم بإرسال طلب POST يحتوي على أسماء مفاتيح مُعدَّة خصيصاً تضم كود JavaScript خبيث. يُخزَّن هذا الكود في قاعدة بيانات الموقع (ومن هنا تصنيف Stored XSS وفق CWE-79)، ثم يُنفَّذ في متصفح أي مستخدم أو مدير يفتح الصفحة المصابة لاحقاً.

  • نوع الثغرة: Stored Cross-Site Scripting
  • المتطلب: لا يحتاج المهاجم إلى أي مصادقة (Unauthenticated)
  • الإصدارات المتأثرة: جميع الإصدارات حتى 9.1.11 شاملةً
  • نقطة الحقن: أسماء معاملات POST في دالة submit_nex_form()
CVE-2026-5063 - WordPress - أمان السيرفرات
CVE-2026-5063 · WordPress · HIGH

درجة الخطورة

حصلت الثغرة على تقييم CVSS 7.2 (HIGH)، وهو تقييم مرتفع نظراً لعدة عوامل:

  • إمكانية الاستغلال دون الحاجة لأي حساب أو صلاحيات مسبقة.
  • قابلية الاستغلال عن بُعد عبر طلبات HTTP اعتيادية.
  • خطر اختطاف جلسات المسؤولين (Admin Session Hijacking) مما قد يؤدي إلى سيطرة كاملة على الموقع.
  • احتمال إعادة توجيه الزوار إلى مواقع خبيثة أو زرع backdoors عبر لوحة الإدارة.

بالنسبة لشركات الاستضافة المشتركة، قد تتحول ثغرة واحدة إلى وسيلة لاختراق عدد كبير من المواقع في الخادم نفسه إذا نجح المهاجم في الوصول إلى حساب إداري.

هل تم استغلالها؟

حتى لحظة النشر، لم تُدرج الثغرة ضمن قائمة CISA KEV للثغرات المُستغلَّة فعلياً، ولا توجد تقارير علنية تؤكد استغلالاً واسعاً في البرية. غير أن طبيعة الثغرة (XSS مخزّنة بدون مصادقة) تجعلها هدفاً جذاباً جداً للأدوات الآلية ومحركات المسح الخاصة بالمهاجمين، ومن المتوقع ظهور محاولات استغلال جماعي خلال فترة قصيرة بعد نشر التفاصيل.

الحل والإصلاح

الإجراء الأساسي هو تحديث الإضافة فوراً إلى إصدار أحدث من 9.1.11 يتضمن التصحيح الصادر في changeset 3513524.

للتحقق من وجود الإضافة والإصدار الحالي عبر WP-CLI:

wp plugin list --name=nex-forms-express-wp-form-builder

لتحديث الإضافة مباشرة عبر WP-CLI:

wp plugin update nex-forms-express-wp-form-builder

إذا تعذّر التحديث الفوري، يمكن تعطيل الإضافة كإجراء مؤقت:

wp plugin deactivate nex-forms-express-wp-form-builder

للبحث عن جميع المواقع المصابة على خادم استضافة يحوي عدة مواقع ووردبريس:

find /var/www -type d -name "nex-forms-express-wp-form-builder"

للتحقق من سجلات الوصول بحثاً عن محاولات استغلال مشبوهة على مسارات الإرسال:

grep -i "admin-ajax.php" /var/log/nginx/access.log | grep -i "nex_form"

يُوصى إضافةً إلى ذلك بتفعيل Web Application Firewall (WAF) مثل Wordfence أو قواعد ModSecurity على مستوى الخادم لرصد محاولات حقن وسوم <script> داخل أسماء المعاملات.

الخلاصة والتوصية

تمثّل ثغرة CVE-2026-5063 تهديداً حقيقياً لكل موقع ووردبريس يستخدم إضافة NEX-Forms بإصدار 9.1.11 أو أقدم، خصوصاً أنها قابلة للاستغلال دون مصادقة. ننصح مسؤولي السيرفرات ومزودي الاستضافة بما يلي:

  1. التحديث الفوري إلى الإصدار المُصحَّح، أو تعطيل الإضافة حتى يتوفر التحديث.
  2. إجراء مسح شامل لقاعدة بيانات الموقع بحثاً عن مدخلات تحتوي على كود JavaScript مشبوه.
  3. تدوير كلمات مرور حسابات الإدارة ومفاتيح wp-config.php كإجراء احترازي.
  4. تفعيل التحديثات التلقائية للإضافات الحرجة عبر WordPress أو على مستوى لوحة التحكم في الاستضافة.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

تحذير لمستخدمي NEX-Forms: ثغرة XSS مخزّنة تهدد موقعك بالكامل

اكتُشفت ثغرة Stored Cross-Site Scripting خطيرة في إضافة NEX-Forms – Ultimate Forms Plugin الشهيرة لووردبريس، تؤثر على جميع الإصدارات حتى 9.1.11. تسمح الثغرة لمهاجمين غير مصادقين بحقن سكربتات ضارة تُنفَّذ عند زيارة الصفحات المصابة. ننصح جميع مدراء المواقع بالتحديث الفوري لحماية زوارهم ولوحات التحكم من سرقة الجلسات والتلاعب بالمحتوى.

⚠️ عالية · CVSS 7.2CVE-2026-5063 · CWE-79

التفاصيل التقنية للثغرة

الثغرة المُسجّلة برقم CVE-2026-5063 تقع في دالة submit_nex_form() داخل إضافة NEX-Forms، وتُصنَّف ضمن نوع CWE-79 (Cross-Site Scripting). يعود السبب الجذري إلى قصور في تعقيم المدخلات (input sanitization) وغياب الهروب الصحيح للمخرجات (output escaping) عند معالجة أسماء مفاتيح معاملات طلبات POST المُرسلة إلى الخادم.

عند إرسال نموذج عبر الإضافة، يتم تخزين أسماء مفاتيح POST دون تصفية كافية، مما يمكّن المهاجم من إدراج شيفرة JavaScript ضارة تُحفظ في قاعدة البيانات وتُنفَّذ لاحقاً عند عرض الصفحة لأي مستخدم، بما في ذلك المسؤولين. ولأن الاستغلال لا يتطلب مصادقة (unauthenticated)، فإن سطح الهجوم واسع ويشمل أي زائر عابر للموقع.

الإصدارات المتأثرة: جميع إصدارات NEX-Forms حتى 9.1.11 (شاملة).

CVE-2026-5063 - WordPress - أمان السيرفرات
CVE-2026-5063 · WordPress · HIGH

درجة الخطورة

حصلت الثغرة على تقييم CVSS 7.2 ضمن الفئة العالية (HIGH). ورغم أنها لم تُدرج في قائمة KEV الخاصة بـ CISA حتى لحظة النشر، إلا أن طبيعتها المخزّنة وكونها قابلة للاستغلال دون مصادقة يجعلانها تهديداً بالغ الخطورة لبيئات استضافة المواقع. تشمل العواقب المحتملة:

سرقة ملفات تعريف الارتباط للمسؤولين، واختطاف جلسات الإدارة، وإعادة توجيه الزوار إلى مواقع تصيّد أو توزيع برمجيات خبيثة، وحقن مواد SEO Spam، وتشويه صفحات الموقع. وفي بيئات الاستضافة المشتركة، قد يستخدم المهاجم الموقع المصاب كنقطة انطلاق لاستهداف مواقع أخرى على نفس الخادم.

هل تم استغلالها؟

وفقاً للمعلومات المتاحة من Wordfence ومستودع ووردبريس الرسمي، لا يوجد حتى الآن تأكيد علني لاستغلال نشط واسع النطاق لهذه الثغرة في البرية (in the wild)، ولم تُدرج في كتالوج KEV. غير أن نشر التفاصيل وتوفّر التصحيح في changeset علني يرفعان احتمال محاولات الاستغلال خلال الأيام المقبلة، خاصة مع شيوع الإضافة وسهولة أتمتة هجمات XSS المخزّنة.

الحل والإصلاح

الحل الرسمي هو التحديث فوراً إلى أحدث إصدار من الإضافة الذي يعالج المشكلة (ما بعد 9.1.11)، كما هو موضّح في الـ changeset رقم 3513524 على plugins.trac.wordpress.org.

للتحقق من الإصدار المثبّت حالياً عبر WP-CLI:

wp plugin get nex-forms-express-wp-form-builder --field=version

لتحديث الإضافة مباشرة:

wp plugin update nex-forms-express-wp-form-builder

للبحث عن أي محتوى مشبوه محقون في قاعدة البيانات:

wp db query "SELECT * FROM wp_posts WHERE post_content LIKE '%<script%' OR post_content LIKE '%onerror=%';"

إذا لم يكن بإمكانك التحديث فوراً، يُنصح بتعطيل الإضافة مؤقتاً:

wp plugin deactivate nex-forms-express-wp-form-builder

إجراءات إضافية موصى بها على مستوى السيرفر: تفعيل قواعد ModSecurity أو WAF (مثل Wordfence) لحجب أنماط XSS الشائعة، ومراجعة سجلات access.log بحثاً عن طلبات POST غير اعتيادية تستهدف endpoint الإضافة، وتدوير كلمات مرور الحسابات الإدارية بعد التحديث.

الخلاصة والتوصية

ثغرة CVE-2026-5063 تُذكّرنا بأن إضافات النماذج تمثّل واجهة استقبال مباشرة للمدخلات الخارجية، وأي خلل في تعقيمها ينعكس فوراً على أمان الموقع بأكمله. نوصي مدراء السيرفرات وشركات الاستضافة بإبلاغ عملائهم الذين يستخدمون NEX-Forms، ودفع التحديث الآلي عبر أدوات الإدارة المركزية، وتعزيز طبقات الدفاع عبر WAF ومراقبة السجلات. التحديث السريع هو خط الدفاع الأول والأهم.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

ثغرة في إضافة WCFM لـ WordPress تسمح بحذف المستخدمين عبر IDOR

تؤثر CVE-2026-2554 على إضافة WCFM – Frontend Manager for WooCommerce في WordPress حتى الإصدار 6.7.25.
سببها IDOR ناتج عن غياب التحقق من المفتاح customerid داخل الإجراء wcfm_delete_wcfm_customer.
يمكن لمستخدم موثّق بصلاحية Vendor أو أعلى حذف مستخدمين عشوائيين، بما في ذلك Administrators.

التحليل التقني

بحسب الوصف المنشور، تعاني إضافة WCFM – Frontend Manager for WooCommerce along with Bookings Subscription Listings Compatible plugin for WordPress من ثغرة Insecure Direct Object Reference مصنفة تحت CWE-639. سبب المشكلة هو غياب التحقق من قيمة customerid التي يتحكم بها المستخدم داخل الإجراء wcfm_delete_wcfm_customer.

الأثر المباشر هو تمكين مهاجم موثّق يملك صلاحية Vendor أو أعلى من حذف مستخدمين عشوائيين من الموقع، بما في ذلك حسابات Administrator. في بيئات استضافة المتاجر الإلكترونية وWordPress متعدد البائعين، هذا النوع من الخلل يمس إدارة الموقع مباشرة، لأنه قد يؤدي إلى حذف حسابات الإدارة أو حسابات تشغيلية مهمة، وبالتالي تعطيل الوصول الإداري أو إرباك إدارة المتجر.

تاريخ النشر المذكور هو 2026-05-02 14:16:17، والإصدارات المتأثرة هي جميع الإصدارات حتى 6.7.25 شاملًا.

المراجع المتاحة: مرجع الكود، مرجع التعديل، مرجع Wordfence.

CVE-2026-2554 - WordPress - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-2554 · WordPress · 2D Explainer

درجة الخطورة

درجة الخطورة المعلنة هي 8.1 من 10 بتصنيف HIGH. هذا المستوى مبرر لأن الاستغلال لا يتطلب وصول Administrator، بل يكفي حساب موثّق بصلاحية Vendor أو أعلى. في سياق استضافة مواقع WooCommerce، هذا يرفع الخطر خصوصًا في المتاجر التي تمنح حسابات Vendor لعدة أطراف، لأن حذف المستخدمين قد يؤثر مباشرة على استمرارية الإدارة والتشغيل.

هل تم استغلالها؟

بحسب البيانات المتاحة هنا، الثغرة غير مدرجة في KEV. كذلك لا تتضمن المعطيات المقدمة إشارة إلى استغلال نشط أو حملة استغلال علنية، لذلك لا يمكن الجزم بوجود استغلال فعلي اعتمادًا على هذه البيانات وحدها.

الحل والإصلاح

الإجراء الأساسي هو التحقق من وجود الإضافة والإصدار المثبّت على الموقع. أي إصدار حتى 6.7.25 يُعد متأثرًا وفق الوصف المنشور، لذلك يجب التحديث إلى إصدار أحدث من 6.7.25. إذا تعذر التحديث فورًا، فالتخفيف العملي هو تعطيل الإضافة مؤقتًا حتى تنفيذ التحديث، مع مراجعة حسابات Vendor والمستخدمين المحذوفين أو المتأثرين.

تحقق من وجود الإضافة على الموقع:

wp plugin list --path=/path/to/wordpress | grep wc-frontend-manager

اعرض الإصدار المثبّت للتأكد مما إذا كان ضمن النطاق المتأثر:

wp plugin get wc-frontend-manager --field=version --path=/path/to/wordpress

حدّث الإضافة إلى إصدار أحدث من 6.7.25:

wp plugin update wc-frontend-manager --path=/path/to/wordpress

إذا لم يكن التحديث متاحًا أو أردت تقليل المخاطر فورًا، عطّل الإضافة مؤقتًا:

wp plugin deactivate wc-frontend-manager --path=/path/to/wordpress

للمراجعة السريعة بعد الاشتباه في الاستغلال، اعرض المستخدمين وصلاحياتهم للتحقق من أي حذف غير متوقع:

wp user list --fields=ID,user_login,roles --path=/path/to/wordpress

الخلاصة والتوصية

ثغرة CVE-2026-2554 مهمة لمديري استضافة WordPress وWooCommerce لأنها تسمح لحساب Vendor موثّق بحذف مستخدمين عشوائيين، بما في ذلك Administrators. الأولوية العملية هي حصر المواقع التي تستخدم الإضافة، التحقق من الإصدار، ثم التحديث إلى إصدار أحدث من 6.7.25 أو تعطيل الإضافة مؤقتًا حتى إتمام المعالجة.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

CVE-2026-2554 · CVSS: 8.1 (HIGH) · CWE-639 ·

ثغرة SQL خطيرة في Online Hospital Management System

تم رصد ثغرة SQL Injection عالية الخطورة في Online Hospital Management System 1.0 ضمن الملف /viewappointment.php.
الاستغلال يتم عن بُعد ويرتبط بمعامل delid، مع وجود استغلال علني منشور بالفعل.
في بيئات الاستضافة، الخطر يتركز على التطبيق المتاح عبر الويب وقاعدة البيانات المرتبطة به، ما يستدعي عزل المسار المتأثر فوراً.

⚠️ عالية · CVSS 7.3CVE-2026-7632 · CWE-74

التحليل التقني

الثغرة مسجلة تحت CWE-74 وبدرجة CVSS تبلغ 7.3 وتصنيف HIGH. وفق البيانات المتاحة، المنتج المتأثر هو code-projects Online Hospital Management System 1.0، وتحديداً الملف /viewappointment.php. تم وصف المشكلة على أنها SQL Injection ناتجة عن التلاعب بالمعامل delid داخل وظيفة غير معروفة في هذا الملف.

الاستغلال ممكن عن بُعد، وهذا مهم جداً في بيئات استضافة المواقع لأن التطبيق يكون عادة مكشوفاً عبر HTTP/HTTPS. عند وجود إدخال غير مضبوط في نقطة وصول مرتبطة بقاعدة البيانات، يصبح الخطر مباشراً على سلامة البيانات وسرية السجلات داخل التطبيق.

للتحقق من موضع الملف داخل جذر التطبيق:

find . -type f -name "viewappointment.php"

وللبحث عن استخدام المعامل delid داخل الشفرة:

grep -R --line-number "delid" .

المراجع المنشورة المرتبطة بهذه الحالة تشمل الموقع الرسمي للمشروع وروابط الإفصاح العام والاستغلال المنشور: code-projects.org، GitHub، VulDB Submit، VulDB Entry، VulDB CTI.

CVE-2026-7632 - PHP - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-7632 · PHP · 2D Explainer

درجة الخطورة

التصنيف HIGH بدرجة 7.3 يجعل هذه الثغرة مهمة عملياً لأي خادم يستضيف التطبيق على الإنترنت. السبب ليس الرقم فقط، بل كون الاستغلال يتم عن بُعد ويطال نقطة داخل التطبيق تتعامل مع قاعدة البيانات. بالنسبة لمدير السيرفر أو شركة الاستضافة، هذا يعني أن الخطر لا يقف عند تعطل صفحة واحدة، بل قد يمتد إلى العبث ببيانات النظام إذا تُرك المسار المتأثر مكشوفاً دون عزل أو مراجعة.

هل تم استغلالها؟

نعم، البيانات المتاحة تشير بوضوح إلى أن الاستغلال تم الإفصاح عنه علناً وقد يُستخدم فعلياً. كما أن خانة KEV مذكور فيها “لا”، أي أنها ليست مدرجة ضمن Known Exploited Vulnerabilities في المعطيات التي زودتني بها، لكن وجود استغلال عام منشور يرفع مستوى الاستعجال من زاوية التشغيل والاستضافة، خصوصاً إذا كان التطبيق متاحاً مباشرة من الإنترنت.

للبحث السريع في السجلات عن الوصول إلى الملف المتأثر:

grep -R --line-number "viewappointment.php" /var/log 2>/dev/null

وللبحث عن الطلبات التي تتضمن المعامل delid:

grep -R --line-number "delid=" /var/log 2>/dev/null

الحل والإصلاح

لا تتضمن البيانات المتاحة نسخة مصححة أو تحديثاً رسمياً محدداً، لذلك يجب التعامل مع الحالة على مرحلتين: تخفيف فوري على مستوى الخادم، ثم إصلاح الشفرة داخل /viewappointment.php. الإجراء العاجل في بيئات الاستضافة هو تقييد أو حجب الوصول إلى الملف المتأثر مؤقتاً إذا لم يكن تعطيله سيوقف خدمة حرجة. بعد ذلك، راجع أي استخدام للمعامل delid وتأكد من رفض القيم غير الصحيحة واستخدام استعلامات محضّرة بدلاً من بناء SQL مباشرة من المدخلات.

للتخفيف الفوري على Nginx يمكن استخدام قاعدة حجب مباشرة للمسار:

location = /viewappointment.php { return 403; }

وللتخفيف الفوري على Apache يمكن حجب الملف نفسه:

<Files "viewappointment.php">
    Require all denied
</Files>

وعلى مستوى PHP، ابدأ بمنع أي قيمة غير رقمية للمعامل delid:

$delid = filter_input(INPUT_GET, "delid", FILTER_VALIDATE_INT);
if ($delid === false || $delid === null) {
    http_response_code(400);
    exit("Invalid delid");
}

وللتأكد من وجود نقاط تحتاج مراجعة داخل التطبيق:

grep -R --line-number "viewappointment.php|delid|SELECT |UPDATE |DELETE |INSERT " .

إذا كان التطبيق ضرورياً للإنتاج ولا يمكن تعطيل الملف فوراً، فالأولوية تكون لتقييد الوصول إليه مؤقتاً ثم تعديل الشفرة بحيث لا يُمرر أي إدخال من المستخدم إلى استعلام SQL بشكل مباشر.

الخلاصة والتوصية

هذه ثغرة SQL Injection عالية الخطورة في Online Hospital Management System 1.0، والاستغلال الخاص بها منشور علناً، ما يجعل التأخير في المعالجة مخاطرة تشغيلية واضحة على خوادم الاستضافة. التوصية العملية هي عزل /viewappointment.php فوراً، فحص السجلات لأي طلبات مرتبطة بالمعامل delid، ثم مراجعة الشفرة داخل الملف لتطبيق تحقق صارم من الإدخال ومنع بناء استعلامات SQL من مدخلات المستخدم مباشرة.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

تحديث عاجل لمستخدمي Geo Mashup: ثغرة SQL تهدد قواعد بياناتك

كُشف عن ثغرة أمنية عالية الخطورة في إضافة Geo Mashup الشهيرة لمنصة WordPress، تسمح لمهاجمين غير مُصادقين بتنفيذ حقن SQL من النوع الزمني (Time-Based Blind SQLi) عبر معامل sort. تؤثر الثغرة على جميع الإصدارات حتى 1.13.18 وتتيح استخراج بيانات حساسة من قاعدة البيانات. يتعين على مديري السيرفرات والمواقع تحديث الإضافة فوراً لتفادي استهداف منصاتهم.

⚠️ عالية · CVSS 7.5CVE-2026-4060 · CWE-89

التفاصيل التقنية

تنشأ الثغرة المُسجّلة تحت المعرف CVE-2026-4060 من ضعف في تطهير المدخلات ضمن سياق جملة ORDER BY داخل ملفات الإضافة المسؤولة عن بناء الاستعلامات الجغرافية. فعلى الرغم من استخدام الدالة esc_sql() على قيمة المعامل sort، إلا أنها غير فعّالة في هذا السياق تحديداً لأن القيمة لا تُحاط بعلامات اقتباس، مما يجعل التهريب (escaping) عديم الأثر.

في الإصدار 1.13.18 أضاف المطوّر دالة تطهير قائمة على قائمة بيضاء (allowlist) باسم sanitize_sort_arg()، لكن التصحيح طُبّق حصراً على مسار AJAX داخل الدالة sanitize_query_args()، وأُغفل تطبيقه في المسارات الأخرى مثل render-map.php ووسوم القوالب (template tags). هذا الإغفال يُبقي الثغرة قائمة في مسارات متعددة يستطيع المهاجم استدعاؤها بلا مصادقة.

يستغل المهاجم الثغرة بحقن استعلامات SQL إضافية داخل الاستعلام القائم، ويعتمد على أسلوب العمى الزمني (Time-Based Blind) عبر دوال مثل SLEEP() لاستخراج المعلومات بيتاً ببت من خلال قياس زمن الاستجابة.

التصنيف التقني للثغرة هو CWE-89: SQL Injection، وهو من أخطر أنواع الثغرات على بيئات الاستضافة المشتركة والمخصصة.

CVE-2026-4060 - WordPress - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-4060 · WordPress · 2D Explainer

درجة الخطورة

حصلت الثغرة على تقييم 7.5 (HIGH) وفق معيار CVSS، وهو تقييم يعكس الخطورة الفعلية لعدة أسباب:

  • عدم الحاجة إلى مصادقة: يمكن للمهاجم استغلالها دون امتلاك أي حساب على الموقع.
  • سهولة الاستغلال عن بُعد: عبر طلب HTTP عادي يمرّر معامل sort مُعدّلاً.
  • تسريب بيانات حساسة: مثل بيانات اعتماد المستخدمين، مفاتيح API، ومحتوى الجداول.
  • تأثير على السيرفر: استعلامات SLEEP المتكررة قد تُرهق قاعدة البيانات وتؤدي إلى تدهور الأداء أو حجب الخدمة عن المواقع المجاورة في بيئات الاستضافة المشتركة.

هل تم استغلالها؟

حتى تاريخ نشر هذه النشرة، لم تُدرَج الثغرة ضمن كتالوج CISA KEV للثغرات المُستغلّة فعلياً، ولا توجد تقارير علنية مؤكدة عن حملات استغلال واسعة النطاق. غير أن ثغرات SQL Injection في إضافات WordPress تستقطب تاريخياً اهتماماً كبيراً من المهاجمين الآليين (bots) بمجرد الإفصاح عنها، نظراً لسهولة أتمتتها وانتشار الإضافات المتأثرة. لذا يُعدّ التحديث الفوري إجراءً وقائياً لا يحتمل التأجيل.

الحل والإصلاح

التوصية الأساسية هي ترقية إضافة Geo Mashup إلى أحدث إصدار يُعالج الثغرة في جميع مسارات الكود (وليس فقط مسار AJAX). للتحقق من إصدار الإضافة المُثبّتة على السيرفر عبر WP-CLI:

wp plugin get geo-mashup --field=version

لتحديث الإضافة فوراً إلى أحدث نسخة:

wp plugin update geo-mashup

لتعطيل الإضافة مؤقتاً حتى إتمام التحديث إن تعذّر ذلك:

wp plugin deactivate geo-mashup

للبحث عن جميع المواقع المتأثرة على سيرفر يستضيف عدة تنصيبات WordPress:

find /var/www -name "geo-mashup" -type d

لمراجعة سجلات الويب بحثاً عن محاولات استغلال تستهدف المعامل sort:

grep -Ei "sort=.*(sleep|benchmark|union|select)" /var/log/nginx/access.log

يُنصح كذلك بتفعيل قواعد ModSecurity أو جدار حماية تطبيقي (WAF) يحجب أنماط حقن SQL الشائعة في معاملات URL، ومراجعة سجلات MySQL للكشف عن استعلامات طويلة الزمن غير معتادة:

mysqldumpslow -s t /var/log/mysql/mysql-slow.log | head -20

الخلاصة والتوصية

تُمثّل ثغرة CVE-2026-4060 تذكيراً مهمّاً بأن إضافات WordPress تبقى أحد أبرز نواقل الهجوم على بيئات الاستضافة. وبما أن الاستغلال لا يتطلب مصادقة ويستهدف قاعدة البيانات مباشرة، فإن المخاطر تمتد من تسريب بيانات المستخدمين إلى إرهاق موارد السيرفر. نوصي مديري الاستضافة بفحص جميع تنصيبات العملاء، وإجبار تحديث الإضافة، وتفعيل حماية WAF، ومراقبة السجلات خلال الأيام التالية للإفصاح لرصد أي محاولات استغلال آلية.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

خطر داهم على متاجر InnoShop: ثغرة مصادقة تفتح أبواب التنصيب للمهاجمين

اكتُشفت ثغرة أمنية خطيرة في منصة التجارة الإلكترونية InnoShop حتى الإصدار 0.7.8، تصيب دالة InstallServiceProvider::boot المسؤولة عن نقطة التنصيب. تسمح الثغرة بتجاوز آلية المصادقة عن بُعد دون الحاجة إلى صلاحيات مسبقة. تم الإفصاح عن الاستغلال علنياً، ويتوفر تصحيح رسمي يجب تطبيقه فوراً على جميع السيرفرات المستضيفة لهذه المنصة.

⚠️ عالية · CVSS 7.3CVE-2026-7630 · CWE-287

التفاصيل التقنية

تقع الثغرة المسجّلة تحت المعرّف CVE-2026-7630 ضمن تصنيف CWE-287 (Improper Authentication)، وتحديداً في الملف:

innopacks/install/src/InstallServiceProvider.php

المكوّن المتأثر هو Installation Endpoint الخاص بعملية تثبيت المنصة. تنشأ المشكلة من خلل في دالة boot() داخل InstallServiceProvider، حيث لا تُطبَّق ضوابط المصادقة بالشكل الصحيح، مما يجعل نقطة التنصيب قابلة للوصول والتلاعب عن بُعد حتى بعد اكتمال عملية التثبيت الأولية.

بالنسبة لأصحاب استضافة المواقع، يعني ذلك أن أي سيرفر يحتضن InnoShop بإصدار ≤ 0.7.8 يكون عرضة لهجمات HTTP مباشرة دون الحاجة لاختراق المصادقة التقليدية (لوحة التحكم أو قاعدة البيانات).

CVE-2026-7630 - PHP - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-7630 · PHP · 2D Explainer

درجة الخطورة

صُنّفت الثغرة بدرجة 7.3 (HIGH) وفق معيار CVSS، وهو تصنيف عالٍ يستوجب التعامل الفوري. أبرز عوامل الخطورة:

  • الاستغلال عن بُعد: لا يحتاج المهاجم إلى وصول محلي للسيرفر.
  • عدم الحاجة لصلاحيات: يمكن تنفيذ الهجوم دون امتلاك حساب مسبق.
  • الإفصاح العلني: تفاصيل الاستغلال متاحة للعموم، مما يرفع احتمالية الاستهداف.
  • التأثير على سلامة المتجر: قد يؤدي تجاوز المصادقة إلى العبث بإعدادات التنصيب وبيانات الاتصال بقاعدة البيانات.

لم تُدرج الثغرة حالياً ضمن قائمة KEV التابعة لـ CISA، لكن ذلك لا يقلل من ضرورة التحديث.

هل تم استغلالها؟

وفقاً للمعلومات المتاحة، تم الإفصاح العلني عن الاستغلال (Public Disclosure)، وهو ما يجعل الثغرة قابلة للاستخدام من قِبل أي مهاجم يمتلك المعرفة التقنية الأساسية. لم يُؤكَّد حتى الآن إدراجها ضمن حملات استغلال نشطة واسعة النطاق، إلا أن توفر تفاصيل الاستغلال عبر منصات مثل VulDB ونقاشات GitHub يعني أن نافذة الخطر مفتوحة، ويُنصح بافتراض أن الهجمات قد تبدأ خلال وقت قصير.

الحل والإصلاح

أصدر فريق InnoShop تصحيحاً رسمياً معرّفاً بالـ commit التالي:

45758e4ec22451ab944ae2ae826b1e70f6450dc9

الخطوة 1: تحقّق من إصدار InnoShop المثبّت على سيرفرك:

cd /path/to/innoshop && git log --oneline -5

الخطوة 2: اسحب آخر التحديثات من المستودع الرسمي:

git pull origin main

الخطوة 3: إن كنت تفضّل تطبيق التصحيح يدوياً فقط، نفّذ:

git cherry-pick 45758e4ec22451ab944ae2ae826b1e70f6450dc9

الخطوة 4: كإجراء احترازي إضافي، قم بتعطيل الوصول إلى نقطة التنصيب عبر إعدادات Nginx أو Apache:

location ~ ^/install { deny all; return 403; }

الخطوة 5: بعد التحديث، امسح الذاكرة المؤقتة لإطار Laravel:

php artisan cache:clear && php artisan config:clear

الخطوة 6: راجع سجلات الوصول بحثاً عن محاولات استغلال سابقة تستهدف مسار /install:

grep "/install" /var/log/nginx/access.log | tail -100

الخلاصة والتوصية

ثغرة CVE-2026-7630 تمثّل تهديداً جدياً لكل من يستضيف متاجر InnoShop، خصوصاً مع توفر الاستغلال علنياً. نوصي في فجّار جميع عملاء الاستضافة بما يلي:

  • تحديث InnoShop فوراً إلى إصدار يتضمّن التصحيح الرسمي.
  • حجب مسار /install على مستوى خادم الويب بعد اكتمال التنصيب.
  • تفعيل جدار حماية تطبيقات الويب (WAF) لرصد محاولات الوصول المشبوهة.
  • مراجعة سجلات السيرفر بحثاً عن نشاط غير اعتيادي خلال الأسابيع الماضية.

تجاهل هذه الثغرة قد يُعرّض متجرك وبيانات عملائك لمخاطر جسيمة تشمل السيطرة الكاملة على إعدادات التطبيق.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

تحديث عاجل لمستخدمي Geo Mashup: ثغرة SQL Injection تهدد قواعد بياناتك

كُشف عن ثغرة حقن SQL قائمة على الزمن (Time-Based SQL Injection) في إضافة Geo Mashup الشهيرة على WordPress تؤثر على جميع الإصدارات حتى 1.13.18. تسمح الثغرة للمهاجمين غير المصادقين باستخراج بيانات حساسة من قاعدة البيانات عبر معامل map_post_type. يُنصح مديرو السيرفرات وأصحاب المواقع بالتحديث الفوري، خاصةً عند تفعيل ميزة Geo Search.

⚠️ عالية · CVSS 7.5CVE-2026-4061 · CWE-89

التفاصيل التقنية للثغرة

تحمل الثغرة المعرّف CVE-2026-4061 وتُصنَّف ضمن فئة CWE-89 (Improper Neutralization of Special Elements used in an SQL Command). مصدر الخلل يقع في ملف SearchResults.php ضمن الـ hook الخاص بنتائج البحث، حيث يتم استدعاء الدالة stripslashes_deep($_POST) بشكل صريح، مما يُزيل طبقة الحماية التي يوفّرها WordPress عبر Magic Quotes.

بعد ذلك، تُمرَّر قيمة map_post_type دون أي تعقيم إلى عبارة IN(...) داخل استعلام SQL، وذلك دون استخدام esc_sql() أو $wpdb->prepare(). اللافت أن الفرع الخاص بالقيمة any في نفس الكود يطبّق بشكل صحيح array_map('esc_sql', ...)، بينما يغفل الفرع البديل (else branch) عن ذلك تماماً.

شرط الاستغلال الوحيد هو تفعيل ميزة Geo Search من إعدادات الإضافة، وهي ميزة مفعّلة في كثير من المواقع التي تعتمد الإضافة للخرائط التفاعلية.

CVE-2026-4061 - WordPress - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-4061 · WordPress · 2D Explainer

درجة الخطورة

حصلت الثغرة على تقييم CVSS 7.5 (HIGH)، ويُعزى ارتفاع هذا التقييم إلى:

  • إمكانية الاستغلال من قِبل مهاجم غير مصادَق (Unauthenticated) عبر الإنترنت.
  • تسريب بيانات حساسة من قاعدة البيانات مثل بيانات المستخدمين وكلمات المرور المُجزّأة (hashed passwords).
  • سهولة الأتمتة عبر أدوات مثل sqlmap نظراً لكونها Time-Based Blind.
  • عدم الحاجة إلى تفاعل من المستخدم (No User Interaction).

على مستوى استضافة المواقع، قد يؤدي استغلالها إلى ضغط كبير على خدمة MySQL/MariaDB بسبب استعلامات SLEEP() المتكررة، مما قد يتسبّب في بطء السيرفر أو توقف مؤقت للموقع.

هل تم استغلالها؟

حتى وقت نشر هذا التقرير، لم تُدرَج الثغرة ضمن قائمة KEV (Known Exploited Vulnerabilities) الصادرة عن CISA، ولم تُرصَد حملات استغلال واسعة. مع ذلك، فإن طبيعة الثغرة (Unauthenticated SQL Injection في إضافة WordPress) تجعلها هدفاً جذاباً لمنشئي البوتات وماسحات الثغرات الآلية، ومن المتوقع ظهور محاولات استغلال جماعية خلال فترة قصيرة من الإفصاح العلني.

الحل والإصلاح

الحل الرسمي هو التحديث إلى الإصدار الذي يتجاوز 1.13.18 والذي يتضمن التصحيح المرجعي في changeset/3503627.

1) التحقق من إصدار الإضافة المثبّتة عبر WP-CLI:

wp plugin get geo-mashup --field=version

2) تحديث الإضافة فوراً:

wp plugin update geo-mashup

3) إن لم يتوفر التحديث بعد، يمكن تعطيل الإضافة مؤقتاً كإجراء طارئ:

wp plugin deactivate geo-mashup

4) كحل وسيط، يمكن تعطيل ميزة Geo Search من لوحة الإعدادات لأن الاستغلال يتطلّب تفعيلها.

5) للكشف عن محاولات استغلال في سجلات Nginx/Apache:

grep -Ei "map_post_type.*(SLEEP|BENCHMARK|UNION|SELECT)" /var/log/nginx/access.log

6) إضافة قاعدة حماية على مستوى ModSecurity/WAF لحجب الحمولات المشبوهة في المعامل:

SecRule ARGS:map_post_type "@rx (?i)(sleep(|benchmark(|unions+select)" "id:1004061,phase:2,deny,status:403,msg:'Geo Mashup SQLi attempt'"

7) مراقبة استعلامات MySQL البطيئة التي قد تدل على استغلال ناجح:

tail -f /var/log/mysql/slow.log

الخلاصة والتوصية

تُمثّل هذه الثغرة تذكيراً بأهمية استخدام واجهات WordPress الآمنة للاستعلامات مثل $wpdb->prepare() بدلاً من الاعتماد على تعقيم يدوي قد يغفل فروعاً في الكود. نوصي مديري السيرفرات ومقدّمي خدمات الاستضافة بفرض التحديث التلقائي لإضافة Geo Mashup على جميع المواقع المستضافة، وتفعيل قواعد WAF للحدّ من محاولات الحقن الآلي، ومراقبة سجلات MySQL البطيئة لرصد أي نشاط غير طبيعي مرتبط بالمعامل map_post_type.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

تحديث عاجل لمستخدمي Geo Mashup: ثغرة SQL تهدد قواعد بياناتك

كُشفت ثغرة SQL Injection عالية الخطورة في إضافة Geo Mashup الخاصة بـ WordPress، وتؤثر على جميع الإصدارات حتى 1.13.18.
المشكلة تسمح لمهاجم غير موثّق باستخراج معلومات حساسة من قاعدة البيانات بأسلوب Time-Based Blind SQL Injection.
بالنسبة لمديري الاستضافة والسيرفرات، الأولوية الآن هي حصر المواقع المتأثرة والتحقق من الإصدار ثم التحديث أو التعطيل المؤقت.

⚠️ عالية · CVSS 7.5CVE-2026-4062 · CWE-89

التحليل التقني

الثغرة مسجّلة بالمعرّف CVE-2026-4062 ونُشرت بتاريخ 2026-05-02 12:16:16. المنتج المتأثر هو إضافة Geo Mashup لـ WordPress، وتشمل جميع الإصدارات حتى 1.13.18. التصنيف البرمجي هو CWE-89، ما يعني أنها ثغرة SQL Injection.

بحسب الوصف المتاح، تكمن المشكلة في تمرير القيم القادمة من المستخدم عبر المعاملين object_ids وexclude_object_ids دون حماية كافية داخل استعلامات SQL. تم استخدام الدالة esc_sql()، لكنها غير فعّالة في هذا السياق لأن القيم توضع داخل بنية IN(...) وNOT IN(...) غير المحاطة بعلامات اقتباس، بينما هذه الدالة لا تمنع حقن الأقواس أو الكلمات المفتاحية الخاصة بـ SQL.

الوصف يذكر أيضاً أن هناك آلية تنقية تقبل الأرقام فقط داخل sanitize_query_args()، لكنها لا تُطبّق إلا في مسار AJAX، ولا تُطبّق في مسارات render-map.php أو template tags. عملياً، هذا يوسّع سطح الهجوم في بيئات الاستضافة التي تعرض الخرائط أو تعتمد على استدعاءات الإضافة من القوالب في الواجهة الأمامية.

نتيجة ذلك، يمكن لمهاجم غير مسجّل الدخول إلحاق استعلامات إضافية داخل الاستعلامات الموجودة فعلاً، ثم استخدام أسلوب Time-Based Blind SQL Injection لاستخراج معلومات حساسة من قاعدة البيانات. في بيئات الاستضافة، هذا يعني أن الخطر لا يقتصر على تسريب البيانات فقط، بل قد يظهر أيضاً على شكل بطء متعمّد في استجابة قاعدة البيانات أثناء محاولات الاستغلال.

CVE-2026-4062 - WordPress - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-4062 · WordPress · 2D Explainer

درجة الخطورة

درجة الخطورة المعلنة هي 7.5 من 10 وفق CVSS، وهي ضمن المستوى HIGH. هذا التقييم منطقي لأن الاستغلال لا يتطلب تسجيل دخول، ويستهدف قاعدة البيانات مباشرة، وقد يؤدي إلى كشف معلومات حساسة من موقع WordPress المتأثر. بالنسبة لفرق إدارة السيرفرات، أي موقع يستخدم Geo Mashup بإصدار 1.13.18 أو أقدم يجب اعتباره ضمن نطاق الخطر حتى يتم التحقق منه ومعالجته.

هل تم استغلالها؟

لا توجد في البيانات المتاحة إشارة إلى إدراج الثغرة ضمن KEV، حيث إن القيمة المعلنة هي “لا”. كذلك لا يوجد ضمن المعلومات المقدّمة ما يؤكد وجود استغلال فعلي واسع النطاق وقت النشر. مع ذلك، كونها ثغرة SQL Injection غير موثّقة في إضافة WordPress يرفع من أهمية التعامل معها بسرعة، خصوصاً في المواقع العامة التي تعرض وظائف الإضافة للزوار مباشرة.

الحل والإصلاح

الإجراء الأول هو تحديد كل مواقع WordPress التي تحتوي على إضافة Geo Mashup داخل السيرفر أو بيئة الاستضافة. بعد ذلك تحقّق من الإصدار الحالي، لأن جميع الإصدارات حتى 1.13.18 متأثرة وفق البيانات المتاحة. إن كان الموقع يستخدم إصداراً متأثراً، فالتصرف الأنسب هو التحديث إلى إصدار أحدث من 1.13.18 يتضمن الإصلاح المشار إليه في مرجع changeset الرسمي.

في الحالات التي يتعذر فيها التحديث فوراً، يكون التعطيل المؤقت للإضافة خياراً دفاعياً لتقليل سطح الهجوم إلى أن يتم تطبيق الإصلاح. هذا مهم بشكل خاص في خوادم الاستضافة التي تستضيف عدة مواقع WordPress ويصعب فيها انتظار نوافذ صيانة طويلة.

للعثور على الإضافة عبر السيرفر:

find /var/www -path "*/wp-content/plugins/geo-mashup" -type d

للتحقق من الإضافة عبر WP-CLI داخل موقع محدد:

wp plugin list --path=/var/www/html | grep geo-mashup

للتحقق من رقم الإصدار مباشرة من ملف الإضافة:

grep -i "^Version:" /var/www/html/wp-content/plugins/geo-mashup/geo-mashup.php

لتحديث الإضافة إن كان WP-CLI متاحاً:

wp plugin update geo-mashup --path=/var/www/html

وللتعطيل المؤقت إذا تعذر التحديث فوراً:

wp plugin deactivate geo-mashup --path=/var/www/html

بعد تنفيذ التحديث، أعد التحقق من الحالة والإصدار:

wp plugin list --path=/var/www/html | grep geo-mashup

الخلاصة والتوصية

هذه الثغرة تمس جانباً حساساً جداً في مواقع WordPress، وهو الوصول إلى قاعدة البيانات عبر إضافة مستخدمة في الواجهة الأمامية. الخطر الأهم لمديري السيرفرات ليس فقط وجود ثغرة SQL Injection، بل كونها قابلة للاستغلال دون تسجيل دخول. التوصية العملية هي حصر جميع المواقع التي تستخدم Geo Mashup، التحقق من أي إصدار حتى 1.13.18، ثم التحديث فوراً إلى إصدار أحدث، أو تعطيل الإضافة مؤقتاً إلى أن يكتمل التصحيح.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

ثغرة حرجة في Paid Memberships Pro تُعطّل مدفوعات Stripe على موقعك

اكتُشفت ثغرة أمنية عالية الخطورة في إضافة Paid Memberships Pro الشهيرة لـ WordPress تطال جميع الإصدارات حتى 3.6.5، وتسمح لأي مستخدم مسجّل بصلاحية Subscriber فأعلى بإنشاء أو حذف أو إعادة بناء Webhook الخاص بـ Stripe. يؤدي استغلال الثغرة إلى تعطيل كامل لعمليات الدفع، تجديد الاشتراكات، ومعالجة المدفوعات الفاشلة. يجب على مُلّاك المواقع الترقية فوراً إلى أحدث إصدار مُصحَّح.

⚠️ عالية · CVSS 7.1CVE-2026-4100 · CWE-862

التفاصيل التقنية

تحمل الثغرة المعرّف CVE-2026-4100 وتُصنَّف ضمن فئة CWE-862: Missing Authorization، أي غياب التحقق من الصلاحيات قبل تنفيذ عمليات حساسة.

تكمن المشكلة في ثلاثة معالجات AJAX داخل الإضافة لا تقوم بفحص صلاحيات المستخدم قبل تنفيذ عملياتها، وهي:

wp_ajax_pmpro_stripe_create_webhook

wp_ajax_pmpro_stripe_delete_webhook

wp_ajax_pmpro_stripe_rebuild_webhook

بما أن هذه المعالجات مرتبطة بـ wp_ajax_ (وليس wp_ajax_nopriv_)، فإنها متاحة لأي مستخدم مسجّل الدخول. لكن بسبب عدم استخدام دوال مثل current_user_can() للتحقق من صلاحيات الإدارة، يستطيع أي عضو بمستوى Subscriber أو أعلى استدعاءها وإحداث تغييرات على تكامل Stripe Webhook للموقع.

Webhook في Stripe هو قناة الاتصال التي يُبلغ عبرها Stripe موقعك بأحداث الدفع (نجاح الدفع، فشل الدفع، إلغاء الاشتراك، التجديد). العبث بهذه القناة يعني فقدان السيرفر لأي معلومات قادمة من بوابة الدفع.

CVE-2026-4100 - WordPress - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-4100 · WordPress · 2D Explainer

درجة الخطورة

حصلت الثغرة على تقييم CVSS 7.1 ضمن نطاق HIGH. ورغم أنها تتطلب حساباً مسجّلاً، إلا أن المواقع التي تعتمد نموذج العضويات (وهو الاستخدام الأساسي للإضافة) تسمح افتراضياً بالتسجيل الذاتي للزوار بمستوى Subscriber، مما يجعل شرط المصادقة شبه معدوم عملياً.

  • السرية: تأثير محدود.
  • السلامة: تأثير مرتفع على تكامل إعدادات الدفع.
  • التوفر: تأثير مرتفع، إذ يؤدي الاستغلال إلى توقف معالجة المدفوعات كلياً.

لم تُدرج الثغرة ضمن قائمة CISA KEV حتى الآن.

هل تم استغلالها؟

وفقاً للمراجع المتاحة من Wordfence ومستودع المطوّر على GitHub، لا توجد حتى تاريخ النشر تقارير عن استغلال فعلي في البرية (in-the-wild). لكن طبيعة الثغرة تجعلها سهلة الاستغلال نسبياً عبر طلب AJAX بسيط، خاصة وأن المواقع العاملة بإضافات العضويات عادةً ما تفتح التسجيل للزوار. التأثير المباشر على الإيرادات يجعلها هدفاً جذاباً لهجمات التخريب أو الابتزاز.

الحل والإصلاح

الحل الرسمي هو الترقية إلى الإصدار المُصحَّح من Paid Memberships Pro (ما بعد 3.6.5). اتبع الخطوات التالية على سيرفر الاستضافة:

1) تحقق من إصدار الإضافة المثبّت حالياً عبر WP-CLI:

wp plugin get paid-memberships-pro --field=version

2) قم بتحديث الإضافة إلى أحدث إصدار:

wp plugin update paid-memberships-pro

3) إن كنت تدير عدة مواقع على نفس السيرفر، يمكنك تحديثها دفعة واحدة:

for site in /var/www/*/; do wp --path="$site" plugin update paid-memberships-pro --allow-root; done

4) بعد التحديث، تحقق من صحة Stripe Webhook في لوحة الإضافة عبر: Memberships → Payment Gateway & SSL، وتأكد من وجود Webhook صحيح مسجّل في لوحة Stripe.

5) كإجراء تخفيفي مؤقت إذا تعذّر التحديث الفوري، يمكنك تقييد تسجيل المستخدمين الجدد:

wp option update users_can_register 0

6) راجع سجلات السيرفر بحثاً عن طلبات مشبوهة على admin-ajax.php تستهدف المعالجات المذكورة:

grep "admin-ajax.php" /var/log/nginx/access.log | grep -E "pmpro_stripe_(create|delete|rebuild)_webhook"

7) تحقق من Webhooks المسجّلة في Stripe Dashboard وتأكد من عدم وجود إدخالات غير معروفة، واحذف أي Webhook مشبوه.

الخلاصة والتوصية

تمثّل هذه الثغرة تذكيراً بأهمية مبدأ التحقق من الصلاحيات في كل نقطة نهاية AJAX داخل إضافات WordPress، خاصة تلك التي تتعامل مع بوابات الدفع. نوصي جميع مديري المواقع الذين يستخدمون Paid Memberships Pro بتنفيذ التحديث فوراً، ومراجعة إعدادات Stripe Webhook للتأكد من سلامتها. كما نشدّد على أهمية اعتماد نظام مراقبة يومي لتحديثات الإضافات، واستخدام جدار حماية تطبيقات الويب (WAF) مثل Wordfence أو ما يوفّره مزوّد الاستضافة للحد من استغلال الثغرات قبل وصول الرقعة الرسمية.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية

تحذير: ثغرة خطيرة في إضافة Salon Booking System تكشف ملفات سيرفرك

كُشف عن ثغرة أمنية عالية الخطورة في إضافة Salon Booking System – Free Version الخاصة بووردبريس، تؤثر على جميع الإصدارات حتى 10.30.25. تسمح الثغرة لمهاجمين غير موثّقين بقراءة ملفات عشوائية على السيرفر. يُنصح بالتحديث الفوري لحماية بيانات الموقع وملفات الإعدادات الحساسة.

⚠️ عالية · CVSS 7.5CVE-2026-6320 · CWE-22

التفاصيل التقنية للثغرة

تحمل الثغرة المعرّف CVE-2026-6320 وتُصنَّف ضمن فئة CWE-22 (Path Traversal – عبور المسارات). تكمن المشكلة في مسار الحجز العام (public booking flow) الخاص بالإضافة، حيث يقبل النظام قيم حقول ملفات يتحكم بها المهاجم، ثم يستخدم تلك القيم المخزّنة لاحقاً كمسارات موثوقة لإرفاق الملفات في رسائل تأكيد الحجز عبر البريد الإلكتروني.

النتيجة المباشرة هي أن المهاجم غير المصادَق عليه (unauthenticated) يستطيع توجيه الإضافة لقراءة أي ملف محلي على السيرفر يمكن لعملية الويب (عادةً www-data أو nginx) الوصول إليه، ثم تسريبه خارج السيرفر بوصفه مرفقاً ببريد تأكيد الحجز.

من الملفات المعرّضة للخطر في بيئة الاستضافة:

  • ملف wp-config.php الذي يحوي بيانات اعتماد قاعدة البيانات ومفاتيح الأمان.
  • ملفات .env وملفات الإعدادات الخاصة بالتطبيقات الأخرى على نفس السيرفر.
  • ملفات النظام مثل /etc/passwd وسجلات الخدمات.
  • مفاتيح SSH الخاصة إن كانت ضمن نطاق صلاحيات العملية.
CVE-2026-6320 - Nginx - رسم توضيحي أمني ثنائي الأبعاد
CVE-2026-6320 · Nginx · 2D Explainer

درجة الخطورة

حصلت الثغرة على درجة 7.5 في مقياس CVSS وصُنِّفت بمستوى HIGH (عالي). ترتفع خطورتها للأسباب التالية:

  • لا تتطلب مصادقة: أي زائر مجهول يستطيع استغلالها.
  • سهولة الاستغلال: تمر عبر مسار الحجز العام المتاح افتراضياً.
  • تسريب بيانات قاعدة البيانات: قراءة wp-config.php تعني اختراقاً محتملاً كاملاً للموقع.
  • قناة استخراج غير مباشرة: استخدام البريد الإلكتروني كقناة تسريب يصعّب اكتشافها في سجلات الجدار الناري.

لم تُدرَج الثغرة حتى الآن في قائمة CISA KEV للثغرات المُستغلَّة فعلياً.

هل تم استغلالها؟

لا توجد حتى لحظة النشر تقارير عامة مؤكدة عن استغلال فعلي واسع النطاق لهذه الثغرة في البرية (in the wild)، كما أنها غير مُدرجة في كتالوج CISA KEV. مع ذلك، فإن طبيعة الثغرة (عدم الحاجة لمصادقة + سهولة الوصول لمسار الحجز العام) تجعلها هدفاً جذاباً للمهاجمين بمجرد نشر تفاصيل الإصلاح. يُتوقع ظهور أدوات استغلال آلية (exploit scripts) خلال فترة قصيرة من الإفصاح.

الحل والإصلاح

الإجراء الأساسي هو التحديث الفوري لإضافة Salon Booking System إلى إصدار أعلى من 10.30.25. على مسؤولي استضافة المواقع اتباع الخطوات التالية:

أولاً: تحقق من إصدار الإضافة المثبّت حالياً عبر WP-CLI:

wp plugin get salon-booking-system --field=version

ثانياً: قم بتحديث الإضافة إلى أحدث إصدار:

wp plugin update salon-booking-system

ثالثاً: للبحث عن جميع المواقع المتأثرة على سيرفر استضافة مشترك:

find /var/www -type d -name "salon-booking-system"

رابعاً: فحص سجلات الوصول للكشف عن محاولات استغلال سابقة تستهدف مسار الحجز:

grep -E "salon-booking|sbs_" /var/log/nginx/access.log | grep -iE "../|/etc/|wp-config"

خامساً: في حال الاشتباه بالاستغلال، قم بتدوير بيانات الاعتماد فوراً:

wp config shuffle-salts

ثم غيّر كلمة مرور قاعدة البيانات من لوحة التحكم (cPanel / Plesk) أو عبر MySQL مباشرة.

سادساً: كإجراء وقائي مؤقت إذا تعذّر التحديث الفوري، يمكن تعطيل الإضافة:

wp plugin deactivate salon-booking-system

الخلاصة والتوصية

ثغرة CVE-2026-6320 تمثّل تهديداً مباشراً لأي موقع ووردبريس يستخدم إضافة Salon Booking System بإصدار 10.30.25 أو أقدم، خاصةً أنها قابلة للاستغلال دون مصادقة وقد تؤدي إلى تسريب wp-config.php وبيانات قاعدة البيانات. نوصي مزوّدي خدمات الاستضافة بفحص جميع المواقع على السيرفرات المشتركة، ودفع تحديث جماعي للإضافة، ومراقبة سجلات البريد الصادر بحثاً عن مرفقات مشبوهة. تطبيق مبدأ الدفاع متعدد الطبقات عبر WAF وتقييد صلاحيات قراءة الملفات (chroot / open_basedir) يُقلل من الأثر في حال ظهور ثغرات مشابهة مستقبلاً.

📎 ملفات التحميل

📄 English Security Advisory – تقرير احترافي للمختصين

📝 Technical README (Markdown) – وثائق تقنية للفرق الداخلية