تم الكشف عن ثغرة تجاوز مصادقة حرجة (CVE-2026-8457) في إضافة WooCommerce Social Login، مما يسمح للمهاجمين بالاستيلاء على أي حساب WordPress – بما في ذلك حسابات المسؤولين. تحمل الثغرة درجة CVSS تبلغ 9.8، وهي أعلى فئة من حيث الخطورة، ويمكن استغلالها دون الحاجة إلى كلمة مرور، أو رمز التحقق بخطوتين، أو أي تفاعل من المستخدم.
لماذا تهم هذه الثغرة مطوري WordPress
تتيح إضافة WooCommerce Social Login، التي تنشرها WPWeb Elite، لمواقع التجارة الإلكترونية السماح للعملاء بتسجيل الدخول باستخدام Apple. ونظرًا لأن الإضافة تتكامل مباشرة مع نظام مستخدمي WordPress، فإن أي خرق في تدفق المصادقة الخاص بها يمكن أن يعرض الموقع بأكمله للخطر. يمكن للمهاجم الذي يزور id_token الخاص بـ Apple أن يستولي على حساب موجود، مما يمنحه تحكمًا كاملاً في محتوى الموقع والطلبات وبيانات العملاء.
المشكلة ليست مجرد خطأ مطبعي معزول؛ بل هي ثالث ثغرة مصادقة رئيسية يتم العثور عليها في عائلة هذه الإضافة خلال عامين. تشير الإخفاقات المتكررة في التحقق من رموز الطرف الثالث إلى وجود مشكلة منهجية في كيفية تعامل الكود مع بيانات الاعتماد الخارجية.
كيف يعمل تجاوز المصادقة
- معالجة رمز Apple – عندما ينقر الزائر على "Sign in with Apple"، تتلقى الإضافة
id_tokenوهو عبارة عن JSON Web Token (JWT) يحتوي على بريد المستخدم الإلكتروني وادعاءات (claims) أخرى. - غياب التحقق من التوقيع – تقوم الإضافة بفك تشفير JWT ولكنها لا تتحقق أبدًا من التوقيع التشفيري الذي يثبت أن الرمز قد صدر عن Apple.
- عدم وجود فحوصات للمصدر (issuer) أو الجمهور (audience) أو انتهاء الصلاحية (expiration) – كما أنها تتخطى التحقق من مصدر الرمز (من أنشأه)، والجمهور (لمن هو مخصص)، ووقت انتهاء الصلاحية.
وبسبب هذه الإغفالات، يمكن للمهاجم صياغة JWT مزيف يدعي أنه يمتلك أي عنوان بريد إلكتروني يختاره. تثق الإضافة في البريد الإلكتروني الذي تم فك تشفيره كأنه حقيقي، وتقوم بإنشاء مستخدم WordPress مطابق أو تسجيل الدخول إليه دون أي دليل.
وتزيد مشكلة ثانية من تفاقم المخاطر: تقوم الإضافة بكشف "security nonce" – وهي قيمة تُستخدم لمرة واحدة لمنع هجمات إعادة التشغيل (replay attacks) – للزوار غير المصرح لهم. وهذا يجعل من السهل جدًا على المهاجم كتابة نص برمجي (script) للعملية بأكملها دون الحاجة إلى تفعيل تدفق تسجيل دخول شرعي.
من هم المعرضون للخطر
- أصحاب المواقع الذين يستخدمون WooCommerce – أي موقع مثبت عليه الإضافة ومفعل لتسجيل الدخول عبر Apple معرض للخطر.
- المطورون والوكالات – أولئك الذين يديرون مواقع متعددة لعملائهم قد يكون لديهم عشرات التثبيتات المعرضة للخطر.
- العملاء – إذا حصل المهاجم على صلاحيات المسؤول، فيمكنه قراءة بيانات الطلبات أو تعديلها أو حذفها، مما قد يؤدي إلى كشف المعلومات الشخصية ومعلومات الدفع.
خطوات فورية لحماية موقعك
- التحديث إلى الإصدار 2.8.8 – يتضمن الإصلاح أحدث إصدار متاح من CodeCanyon. الإضافات المدفوعة (Premium) لا تتلقى تحديثات تلقائية عبر مستودع WordPress.org، لذا يجب عليك تنزيل الحزمة الجديدة وتثبيتها يدويًا.
- مراجعة حسابات المستخدمين – ابحث في جدول مستخدمي WordPress عن الحسابات التي تم إنشاؤها بعد 1 أغسطس 2026، خاصة تلك التي تتمتع بصلاحيات المسؤول.
- مراجعة سجلات الخادم – ابحث عن طلبات غير عادية لنقاط نهاية (endpoints) تسجيل الدخول الاجتماعي الخاصة بالإضافة، مثل الطلبات المتكررة من نفس عنوان IP أو الطلبات التي تحتوي على JWT مشوهة.
- تخفيف المخاطر مؤقتًا – إذا لم تتمكن من تطبيق التحديث على الفور، فقم بتعطيل تسجيل الدخول عبر Apple في إعدادات الإضافة. سيؤدي ذلك إلى إزالة أكثر ناقلات الهجوم قابلية للاستغلال أثناء تخطيطك للترقية.
ما يمكن للمطورين تعلمه
- تحقق دائمًا من تواقيع JWT – قم بجلب JSON Web Key Set (JWKS) الخاص بمزود الخدمة وتحقق من الإثبات التشفيري للرمز قبل الوثوق بأي ادعاء (claim).
- تحقق من المصدر والجمهور وانتهاء الصلاحية – تؤكد هذه الحقول أن الرمز مخصص لموقعك وأنه لا يزال صالحًا.
- لا تكشف أبدًا عن رموز المصادقة (nonces) علنًا – يجب إنشاء الـ nonces في جانب الخادم (server-side) وإرسالها فقط إلى الجلسات المصادق عليها.
- تقييد تعيين الأدوار – يجب ألا تمنح تدفقات تسجيل الدخول الاجتماعي أدوارًا ذات صلاحيات عالية (مثل المسؤول) دون خطوات تحقق إضافية.
رد المورد
أصدرت WPWeb Elite الإصدار الذي يحتوي على الإصلاح.
ما يجب مراقبته لاحقًا
الخلاصة: أدى غياب فحص توقيع واحد إلى تحويل زر "Sign in with Apple" المريح إلى باب خلفي للاستيلاء الكامل على الموقع. إن تحديث الإضافة، وتعطيل طريقة تسجيل الدخول الضعيفة، وتشديد التحقق من الرموز هي الدفاعات الموثوقة الوحيدة حتى يتم نشر الإصلاح على نطاق واسع.
