The Enable jQuery Migrate Helper plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `downgrade_jquery_version()` function in all versions up to, and including, 1.4.1. This is due to the function only verifying a nonce without checking user capabilities. This makes it possible for authenticated attackers, with Subscriber-level access and above, to downgrade the site-wide jQuery version from 3.7.1 to the legacy 1.12.4-wp release, which has knowns security vulnerabilities.
The Enable jQuery Migrate Helper WordPress plugin (versions ≤1.4.1) contains an authorization bypass vulnerability allowing authenticated subscribers to downgrade jQuery from v3.7.1 to vulnerable v1.12.4-wp. While no public exploit exists, this enables attackers to introduce known jQuery vulnerabilities site-wide. The missing capability check combined with nonce-only validation creates a privilege escalation path for low-privileged users.
IMMEDIATE ACTIONS:
1. Audit all WordPress installations for Enable jQuery Migrate Helper plugin presence and version
2. Restrict Subscriber-level user access to WordPress admin panels if not operationally required
3. Review user roles and capabilities; remove unnecessary admin/editor access for low-privilege accounts
4. Monitor jQuery version in use via browser console (check jQuery.fn.jquery) and verify it remains v3.7.1
COMPENSATING CONTROLS (until patch available):
5. Disable the Enable jQuery Migrate Helper plugin entirely if jQuery 1.x compatibility is not required
6. Implement Web Application Firewall (WAF) rules to block requests containing 'downgrade_jquery_version' function calls
7. Use WordPress security plugins (Wordfence, Sucuri) to monitor for unauthorized jQuery version changes
8. Implement file integrity monitoring on wp-content/plugins/enable-jquery-migrate-helper/ directory
9. Restrict plugin modification capabilities via wp-config.php: define('DISALLOW_FILE_MODS', true)
DETECTION:
10. Monitor WordPress audit logs for user role changes and plugin modifications by low-privilege accounts
11. Alert on any jQuery version downgrades detected in site headers or console output
12. Track nonce validation failures in WordPress debug logs
13. Implement SIEM rules to detect multiple failed capability checks from same user session
الإجراءات الفورية:
1. تدقيق جميع تثبيتات ووردبريس للتحقق من وجود مكون Enable jQuery Migrate Helper والإصدار
2. تقييد وصول المستخدمين على مستوى المشترك إلى لوحات تحكم ووردبريس إذا لم تكن مطلوبة تشغيليًا
3. مراجعة أدوار المستخدمين والقدرات؛ إزالة الوصول غير الضروري للمسؤولين/المحررين للحسابات منخفضة الامتياز
4. مراقبة إصدار jQuery المستخدم عبر وحدة تحكم المتصفح والتحقق من بقاء الإصدار v3.7.1
الضوابط التعويضية (حتى توفر التصحيح):
5. تعطيل مكون Enable jQuery Migrate Helper بالكامل إذا لم تكن توافقية jQuery 1.x مطلوبة
6. تنفيذ قواعد جدار حماية تطبيقات الويب (WAF) لحظر الطلبات التي تحتوي على استدعاءات دالة 'downgrade_jquery_version'
7. استخدام مكونات أمان ووردبريس (Wordfence, Sucuri) لمراقبة التغييرات غير المصرح بها في إصدار jQuery
8. تنفيذ مراقبة سلامة الملفات على دليل wp-content/plugins/enable-jquery-migrate-helper/
9. تقييد قدرات تعديل المكونات عبر wp-config.php: define('DISALLOW_FILE_MODS', true)
الكشف:
10. مراقبة سجلات تدقيق ووردبريس لتغييرات أدوار المستخدمين وتعديلات المكونات من قبل الحسابات منخفضة الامتياز
11. التنبيه على أي تخفيضات إصدار jQuery المكتشفة في رؤوس الموقع أو مخرجات وحدة التحكم
12. تتبع فشل التحقق من nonce في سجلات تصحيح أخطاء ووردبريس
13. تنفيذ قواعد SIEM للكشف عن فحوصات القدرة المتعددة الفاشلة من نفس جلسة المستخدم