The Master Addons For Elementor – Widgets, Extensions, Theme Builder, Popup Builder & Template Kits plugin for WordPress is vulnerable to Stored Cross-Site Scripting via 'jtlma_custom_js' Page Setting (Custom JS Extension) in all versions up to, and including, 3.1.0 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with author-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The unfiltered_html capability check is only enforced during Elementor control registration (UI rendering) and not during the save process, enabling Author-level users to inject the jtlma_custom_js setting directly via a crafted POST request to admin-ajax.php?action=elementor_ajax, bypassing the UI-level restriction entirely.
Master Addons For Elementor plugin versions up to 3.1.0 contain a Stored XSS vulnerability in the Custom JS Extension that allows authenticated author-level users to inject arbitrary JavaScript code into pages. The vulnerability bypasses UI-level restrictions through direct POST requests to admin-ajax.php, enabling persistent script execution whenever users access affected pages. This poses a significant risk to WordPress sites using this popular page builder plugin, particularly in multi-user environments where author accounts may be compromised or untrusted.
IMMEDIATE ACTIONS:
1. Disable the Master Addons For Elementor plugin immediately until a patched version is available
2. Audit all pages and posts created/modified with this plugin for suspicious JavaScript in Custom JS settings
3. Review admin-ajax.php access logs for POST requests with action=elementor_ajax from author-level accounts
4. Revoke author-level access for untrusted or inactive user accounts
5. Implement Web Application Firewall (WAF) rules to block POST requests to admin-ajax.php?action=elementor_ajax containing 'jtlma_custom_js' parameters
DETECTION RULES:
- Monitor WordPress database for 'jtlma_custom_js' meta keys containing <script> tags or javascript: protocols
- Alert on POST requests to /wp-admin/admin-ajax.php with action=elementor_ajax and jtlma_custom_js parameters
- Track user activity logs for author-level accounts making direct AJAX calls
COMPENSATING CONTROLS:
- Implement strict Content Security Policy (CSP) headers to prevent inline script execution
- Use WordPress security plugins to monitor and log all AJAX requests
- Restrict author-level capabilities to trusted personnel only
- Enable two-factor authentication for all administrative accounts
- Regularly scan page content for injected scripts using security scanning tools
PATCHING GUIDANCE:
- Monitor the plugin's GitHub repository and official WordPress plugin page for version 3.1.1 or later
- Test patches in staging environment before production deployment
- After patching, conduct full site audit for existing malicious injections
الإجراءات الفورية:
1. تعطيل مكون إضافي Master Addons For Elementor فوراً حتى يتوفر إصدار معدل
2. تدقيق جميع الصفحات والمنشورات التي تم إنشاؤها/تعديلها باستخدام هذا المكون الإضافي بحثاً عن JavaScript مريب في إعدادات Custom JS
3. مراجعة سجلات وصول admin-ajax.php لطلبات POST من حسابات على مستوى المؤلف
4. إلغاء وصول المؤلف لحسابات المستخدمين غير الموثوقة أو غير النشطة
5. تنفيذ قواعد جدار الحماية لتطبيقات الويب (WAF) لحظر طلبات POST إلى admin-ajax.php?action=elementor_ajax التي تحتوي على معاملات 'jtlma_custom_js'
قواعد الكشف:
- مراقبة قاعدة بيانات WordPress بحثاً عن مفاتيح 'jtlma_custom_js' تحتوي على علامات <script> أو بروتوكولات javascript:
- تنبيه على طلبات POST إلى /wp-admin/admin-ajax.php مع action=elementor_ajax ومعاملات jtlma_custom_js
- تتبع سجلات نشاط المستخدم لحسابات على مستوى المؤلف التي تقوم بطلبات AJAX مباشرة
الضوابط البديلة:
- تنفيذ رؤوس سياسة أمان المحتوى (CSP) صارمة لمنع تنفيذ البرامج النصية المضمنة
- استخدام مكونات إضافية أمان WordPress لمراقبة وتسجيل جميع طلبات AJAX
- تقييد قدرات المؤلف للأشخاص الموثوقين فقط
- تفعيل المصادقة متعددة العوامل لجميع الحسابات الإدارية
- فحص محتوى الصفحة بانتظام بحثاً عن البرامج النصية المحقونة باستخدام أدوات الفحص الأمني
إرشادات التصحيح:
- مراقبة مستودع GitHub للمكون الإضافي والصفحة الرسمية لمكون WordPress بحثاً عن الإصدار 3.1.1 أو أحدث
- اختبار التصحيحات في بيئة التدريج قبل نشرها في الإنتاج
- بعد التصحيح، إجراء تدقيق كامل للموقع بحثاً عن الحقن الضار الموجود