The WooPayments: Integrated WooCommerce Payments plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the 'save_upe_appearance_ajax' function in all versions up to, and including, 10.5.1. This makes it possible for unauthenticated attackers to update plugin settings.
WooPayments plugin versions up to 10.5.1 contain a critical authorization bypass vulnerability allowing unauthenticated attackers to modify plugin settings through the 'save_upe_appearance_ajax' function. This missing capability check exposes e-commerce platforms to unauthorized configuration changes that could compromise payment processing and customer data. The vulnerability poses significant risk to Saudi e-commerce businesses relying on WooCommerce for online transactions.
IMMEDIATE ACTIONS:
1. Audit all WooPayments plugin installations to identify affected versions (≤10.5.1)
2. Disable the WooPayments plugin immediately if running vulnerable version
3. Review plugin settings and payment configuration logs for unauthorized modifications
4. Monitor transaction logs for suspicious payment routing or configuration changes
PATCHING GUIDANCE:
1. Contact WooPayments/Automattic support for patch availability timeline
2. Implement Web Application Firewall (WAF) rules to block requests to 'save_upe_appearance_ajax' endpoint from unauthenticated sources
3. Restrict AJAX endpoint access through .htaccess or nginx configuration requiring authentication
COMPENSATING CONTROLS:
1. Implement strict input validation and capability checks at application level
2. Deploy rate limiting on AJAX endpoints
3. Enable comprehensive audit logging for all payment configuration changes
4. Implement IP whitelisting for administrative functions
5. Use WordPress security plugins (Wordfence, Sucuri) to monitor unauthorized access attempts
DETECTION RULES:
1. Monitor for POST requests to wp-admin/admin-ajax.php with action=save_upe_appearance from unauthenticated sessions
2. Alert on payment configuration changes without corresponding admin user activity
3. Track modifications to WooPayments settings in database audit logs
الإجراءات الفورية:
1. تدقيق جميع تثبيتات مكون WooPayments لتحديد الإصدارات المتأثرة (≤10.5.1)
2. تعطيل مكون WooPayments فوراً إذا كان يعمل بإصدار معرض للخطر
3. مراجعة إعدادات المكون وسجلات معالجة الدفع للتعديلات غير المصرح بها
4. مراقبة سجلات المعاملات للتوجيه غير الطبيعي للدفع أو تغييرات الإعدادات
إرشادات التصحيح:
1. التواصل مع دعم WooPayments/Automattic للحصول على جدول زمني لتوفر التصحيح
2. تطبيق قواعد جدار حماية تطبيقات الويب (WAF) لحجب الطلبات إلى نقطة نهاية 'save_upe_appearance_ajax' من مصادر غير مصرح بها
3. تقييد وصول نقطة نهاية AJAX من خلال ملف .htaccess أو إعدادات nginx التي تتطلب المصادقة
الضوابط البديلة:
1. تطبيق التحقق الصارم من المدخلات والتحقق من الصلاحيات على مستوى التطبيق
2. نشر تحديد معدل على نقاط نهاية AJAX
3. تفعيل تسجيل التدقيق الشامل لجميع تغييرات إعدادات الدفع
4. تطبيق قائمة بيضاء للعناوين IP للوظائف الإدارية
5. استخدام مكونات أمان WordPress (Wordfence, Sucuri) لمراقبة محاولات الوصول غير المصرح بها
قواعد الكشف:
1. مراقبة طلبات POST إلى wp-admin/admin-ajax.php مع action=save_upe_appearance من جلسات غير مصرح بها
2. التنبيه عند تغييرات إعدادات الدفع بدون نشاط مستخدم إداري مقابل
3. تتبع التعديلات على إعدادات WooPayments في سجلات تدقيق قاعدة البيانات