حدود یک ماه گذشته نقص امنیتی در افزونه Duplicator توسط شرکت ارائه دهنده آن Synacktiv کشف شد. Duplicator یکی از پرکاربرد ترین افزونه های وردپرس برای بک آپ گیری و انتقال سایت های وردپرسی هستش و باعث شد که عده زیادی با مشکلات عدیده ای رو به رو شوند. این باگ باعث میشه اختلالات زیادی مثل حذف شدن مشخصات دیتابیس از فایل کانفیگ وردپرس به وجود بیاید که در این صورت سایت با پیغام دیتابیس مواجه می شود:

مشکل از اون جا شروع میشه که بعد از پایان کار و استفاده از افزونه، فایل های installation باقی مانده توسط کاربر از روی هاست پاک نمی شوند.

خود Duplicator این موضوع را به کرات به کاربر گوشزد می کند، ولی خب طبیعتا ما ایرانی ها علاقه چندانی به توجه به پیغام های هشدار و یا حتی خوندن آن ها نداریم و با بی توجهی ازش می گذریم 🙂

بعد از پایان کار افزونه، این پیغام به صورت sticky داشبورد نمایش داده میشه و تا زمان پاک کردن فایل های نصبی (و یا uninstall کردن افزونه) باقی می ماند:

پیغام sticky
پیغام sticky

فایل های مخرب اصلی در این باگ، دو فایل installer.php و installer-backup.php هستند و چون استرینگ های دریافتی را اصطلاحا بدون تمیز کاری (sanitizing)‌ مستقیما به فایل wp-config وارد می کنند باعث به وجود آمدن injection vulnerability در سایت می شوند.

راه حل چیه؟‌

  • اولا Duplicator را آپدیت کنید. چون patch مربوط به باگ توسط شرکت صادر شده که تا حد زیادی مشکل رو رفع می کنه.
  • فایل هایی که دربارش صحبت شد (installer.php and installer-backup.php) و یا هر فایل دیگه ای که مربوط به بازگردانی بک آپ توسط افزونه میشه را از روی هاست خود پاک کنید. ممکنه فایل هایی با اسم database.sql را هم ببینید که باید حذف بشه.
  • جهت اطمینان رمز دیتابیس وردپرس را ریست کنید.
  • باز هم جهت اطمینان، فایل wp-config.php را پاک کنید و مجددا بسازید. از این API وردپرس استفاده کنید تا کلید های امنیتی برای فایل بسازید و در آن جایگزین کنید.
حتما بخوانید   حداکثر امنیت سایت در برابر هک بدون پلاگین

در آخر هم یادتون باشه که از این به بعد اگر از اینچین افزونه هایی استفاده کردید حتما پس از پایان کار فایل های اضافی را پاک کنید .