نقص در بررسی سطح دسترسی (Missing Authorization) در افزونه Clean Login
افزونه Clean Login برای وردپرس در نسخههای تا و شامل ۱.۲۰.۱ بهدلیل نبود بررسی قابلیت (capability check) روی تابع CleanLogin_Shortcode::get_pages_with_shortcodes() که به اکشن save_post متصل است، در برابر آسیبپذیری فقدان مجوز آسیبپذیر است. این نقص به مهاجمان احرازهویتشده با سطح دسترسی Contributor و بالاتر اجازه میدهد با قرار دادن شورتکدهای افزونه در محتوای نوشته خود، گزینههای cl_login_url، cl_login_id، cl_register_url، cl_register_id، cl_restore_url، cl_restore_id، cl_edit_url، cl_edit_id، cl_change_password_url و cl_change_password_id را با شناسه و پیوند یکتای نوشتهای که خودشان ایجاد کردهاند بازنویسی کنند. تاکنون وصله رسمی برای این آسیبپذیری منتشر نشده است؛ بنابراین توصیه میشود افزونه بهطور موقت غیرفعال شود یا از فایروال برنامههای وب (WAF) برای کاهش خطر استفاده گردد.
نسخههای تحت تأثیر
<= 1.20.1
راهنمای اقدام و رفع مشکل (Remediation)
- ۱. پشتیبانگیری: قبل از اعمال هرگونه تغییر، یک بکاپ کامل از پایگاه داده و فایلهای سایت تهیه کنید.
- ۲. بهروزرسانی سریع: افزونه یا هسته clean-login را بلافاصله به آخرین نسخه ارائهشده ارتقا دهید.
- ۳. فایروال و مانیتورینگ: در صورت عدم امکان آپدیت فوری، رولهای امنیتی WAF را فعال کرده و لاگهای وبسرور را پایش نمایید.
مراجع رسمی و مستندات
- https://plugins.trac.wordpress.org/browser/clean-login/tags/1.20.1/include/shortcodes.php#L14 ↗
- https://plugins.trac.wordpress.org/browser/clean-login/tags/1.20.1/include/shortcodes.php#L262 ↗
- https://plugins.trac.wordpress.org/changeset/3768058/clean-login ↗
- https://plugins.trac.wordpress.org/changeset/3768058/clean-login/trunk/include/shortcodes.php ↗
- https://www.wordfence.com/threat-intel/vulnerabilities/id/83a8c282-8552-420d-842f-acd235ad61b8?source=cve ↗