The Unlimited Elements for Elementor plugin for WordPress is vulnerable to Arbitrary File Read via the Repeater JSON/CSV URL parameter in versions up to, and including, 2.0.6. This is due to insufficient path traversal sanitization in the URLtoRelative() and urlToPath() functions, combined with the ability to enable debug output in widget settings. The URLtoRelative() function only performs a simple string replacement to remove the site's base URL without sanitizing path traversal sequences (../), and the cleanPath() function only normalizes directory separators without removing traversal components. This allows an attacker to provide a URL like http://site.com/../../../../etc/passwd which, after URLtoRelative() strips the domain, results in /../../../../etc/passwd being concatenated with the base path and ultimately resolved to /etc/passwd. This makes it possible for authenticated attackers with Author-level access and above to read arbitrary local files from the WordPress host, including sensitive files such as wp-config.
The Unlimited Elements for Elementor plugin (versions ≤2.0.6) contains a critical path traversal vulnerability allowing authenticated users with Author-level access to read arbitrary files from the WordPress server, including sensitive configuration files like wp-config.php. The vulnerability exploits insufficient sanitization in URL processing functions combined with debug output capabilities. This poses significant risk to WordPress installations in Saudi Arabia, particularly those hosting sensitive business or government data.
IMMEDIATE ACTIONS:
1. Disable the Unlimited Elements for Elementor plugin immediately across all WordPress installations
2. Audit access logs for suspicious file read attempts (check for ../../../ patterns in access logs)
3. Review user accounts with Author-level access and above; remove unnecessary elevated privileges
4. Rotate all database credentials, API keys, and secrets stored in wp-config.php
5. Scan wp-config.php and other sensitive files for unauthorized access timestamps
PATCHING GUIDANCE:
1. Do NOT upgrade to any version until official patch is released (no patch currently available)
2. Monitor plugin repository for security updates
3. Consider alternative page builders (Divi, Beaver Builder) if timeline for patch is uncertain
COMPENSATING CONTROLS:
1. Implement Web Application Firewall (WAF) rules to block requests containing "../" sequences
2. Restrict Author-level access to trusted users only; use Editor role instead where possible
3. Disable debug output in all widget settings
4. Implement file integrity monitoring on wp-config.php and other sensitive files
5. Use WordPress security plugins (Wordfence, Sucuri) to monitor for exploitation attempts
6. Implement principle of least privilege for WordPress user roles
DETECTION RULES:
1. Monitor web server logs for requests containing patterns: "../", "..%2F", "..%5C"
2. Alert on any file read operations from wp-config.php, .env, or /etc/passwd
3. Monitor WordPress user activity logs for file access via Elementor widgets
4. Check for unusual POST requests to Elementor repeater endpoints with URL parameters
الإجراءات الفورية:
1. تعطيل مكون Unlimited Elements for Elementor فوراً عبر جميع تثبيتات WordPress
2. تدقيق سجلات الوصول للمحاولات المريبة لقراءة الملفات (البحث عن أنماط ../../../)
3. مراجعة حسابات المستخدمين على مستوى المؤلف وما فوقه؛ إزالة الامتيازات غير الضرورية
4. تدوير جميع بيانات اعتماد قاعدة البيانات ومفاتيح API والأسرار المخزنة في wp-config.php
5. مسح wp-config.php والملفات الحساسة الأخرى للتحقق من طوابع زمن الوصول غير المصرح به
إرشادات التصحيح:
1. عدم الترقية إلى أي إصدار حتى يتم إصدار تصحيح رسمي (لا يوجد تصحيح حالياً)
2. مراقبة مستودع المكون للتحديثات الأمنية
3. النظر في بدائل منشئي الصفحات (Divi, Beaver Builder) إذا كان الجدول الزمني للتصحيح غير مؤكد
الضوابط التعويضية:
1. تنفيذ قواعد جدار حماية تطبيقات الويب (WAF) لحجب الطلبات التي تحتوي على تسلسلات "../"
2. تقييد الوصول على مستوى المؤلف للمستخدمين الموثوقين فقط
3. تعطيل إخراج التصحيح في جميع إعدادات الأدوات
4. تنفيذ مراقبة سلامة الملفات على wp-config.php والملفات الحساسة الأخرى
5. استخدام مكونات أمان WordPress (Wordfence, Sucuri) لمراقبة محاولات الاستغلال
6. تنفيذ مبدأ أقل امتياز لأدوار مستخدمي WordPress
قواعد الكشف:
1. مراقبة سجلات خادم الويب للطلبات التي تحتوي على أنماط: "../", "..%2F", "..%5C"
2. التنبيه على أي عمليات قراءة ملفات من wp-config.php أو .env أو /etc/passwd
3. مراقبة سجلات نشاط مستخدمي WordPress للوصول إلى الملفات عبر أدوات Elementor
4. التحقق من طلبات POST غير العادية إلى نقاط نهاية مكرر Elementor مع معاملات URL