خلاصه
افزونه صفحهساز WPBakery نسخه ۸.۶.۱ و پایینتر دچار آسیبپذیری Stored XSS در ماژول Custom JS است. مهاجمان دارای سطح کاربر Contributor میتوانند بدون نیاز به کدنویسی، اسکریپتهای مخرب بارگذاری کرده و بازدیدکنندگان را هک کنند. برای بستن این حفره باید فوراً به نسخه ۸.۷ آپدیت شوید.
WPBakery چیست و چرا این حفره مهم است؟
WPBakery یک صفحهساز کشیدنورها است که در هزاران قالب تجمیع شده و کاربران بدون کدنویسی طراحی میکنند. به دلیل همین فراگیری، آسیبپذیری جدید سیل عظیمی از سایتها را در معرض risk قرار داده است.
مکانیزم حمله به زبان ساده
نقص Sanitization و Escaping
ماژول Custom JS ورودی کاربر را قبل از ذخیره فیلتر نمیکند و هنگام نمایش در frontend نیز خروجی را ایمن نمیسازد. در نتیجه کدهای مخرب در صفحه ذخیره شده و برای هر بازدیدکننده اجرا میشود.
سطح دسترسی موردنیاز
مهاجم حداقل باید حساب Contributor داشته باشد؛ یعنی میتواند مقاله بنویسد ولی منتشر نکند. همین دسترسی کافی است تا اسکریپت مخرب را درون Custom JS جاسازی کند.
پیامدهای امنیتی
- سرقت کوکیها و نشست کاربران
- هدایت کاربران به سایتهای فیشینگ
- تغییر ظاهر یا حذف محتوای سایت
- نصب بدافزار از راه دور
چکلیست فوری برای مدیران سایت
- آپدیت: از داشبورد وردپرس WPBakery را به نسخه ۸.۷ ارتقا دهید.
- بررسی کاربران: حسابهای مشکوک Contributor یا بالاتر را غیرفعال کنید.
- اسکن فایلها: با افزونههای امنیتی کدهای ناخوانده در Custom JS را شناسایی و حذف کنید.
- پشتیبانگیری: قبل و بعد از آپدیت نسخه پشتیبان کامل بگیرید.
اگر نسخه ۸.۷ را دریافت نمیکنید
موقتاً دسترسی ماژول Custom JS را برای همه نقشها قطع کنید یا افزونه را غیرفعال کنید تا زمان انتشار بروزرسانی در مخزن Themeتان صبر کنید.
جلوگیری از تکرار
همیشه افزونههای تجمیعشده را از طریق Themeتان بهروز نگه دارید، دسترسی Contributor را به افراد مطمئن بدهید و از افزونههای امنیتی وردپرس برای پایش بلادرنگ استفاده کنید.
