گاهی اوقات پس از ورود به سایت خود، ممکن است متوجه تغییرات غیرعادی شوید: صفحات به وبسایتهای مشکوک منتقل میشوند، ظاهر سایت به هم ریخته است و هنگام ورود به هاست، فایل هایی با نام های ناشناخته یا عجیب میبینید. این نشانه ها بیانگر آن است که وب سایت شما هدف حمله قرار گرفته و فایل های وردپرس و قالب تان به ک های مخرب آلوده شدهاند. در این آموزش، تیم متخصص الماس به چگونگی راه اندازی مجدد سایت وردپرسی پس از هک شدن از طریق دیتابیس پرداختند در ادامه همراه باشید.
چرا بازگرداندن سایت آلوده دشوار است؟
زمانی که یک سایت ویروسی میشود، اغلب کدهای خطرناک به فایل های اصلی وردپرس تزریق میشوند و گاهی نام این فایل ها نیز تغییر میکند. همین موضوع فرآیند شناسایی، پاک سازی و بازسازی سایت را چالش برانگیز میکند. برای انجام درست این کار، لازم است نسخه دقیق وردپرس مورد استفاده را بدانید تا بتوانید نسخه سالم آن را جایگزین فایل های آسیب دیده کنید.
چگونه نسخه دقیق وردپرس را پیدا کنیم؟ (بدون ورود به پیشخوان)
روش اول: بررسی فایل version.php
به مسیر public_html/wp-includes در هاست مراجعه کنید و فایل version.php را پیدا نمایید. با باز کردن این فایل، عدد مربوط به نسخه نصبشده وردپرس نمایش داده میشود (مثلاً 5.2).
روش دوم: مشاهده نسخه وردپرس از طریق phpMyAdmin
اگر فایل بالا یافت نشد یا دستکاری شده بود، به phpMyAdmin هاست خود بروید. پایگاه داده سایت را انتخاب کرده و وارد جدول wp_options شوید. تعداد ردیف های قابل مشاهده را روی ۵۰۰ بگذارید. در بخش "Filter rows"، عبارت _site_transient_update_core را جستجو نمایید. پس از یافتن، روی گزینه "Edit" کلیک کنید تا نسخه وردپرس نصب شده را مشاهده کنید.
راه اندازی یک وردپرس تمیز در ساب دامنه
با توجه به نسخه شناسایی شده، وردپرس سالم را از صفحه آرشیو وردپرس فارسی دانلود کنید. یک سابدامنه جدید روی هاست بسازید. وردپرس دانلود شده را در آن ساب دامنه آپلود کرده و نصب کنید. در فایل wp-config.php، اطلاعات دیتابیس سایت قبلی خود را وارد کنید:
define('DB_USER', 'یوزر دیتابیس');
define('DB_PASSWORD', 'رمز عبور دیتابیس');
اگر اطلاعات دیتابیس را نمیدانید. وارد هاست شوید و به بخش MySQL Databases یا MySQL Management بروید. یا فایل wp-config.php سایت قبلی را باز کنید و اطلاعات دیتابیس را از آنجا استخراج کنید.
انتقال فایلهای رسانهای (Uploads)
برای اینکه تصاویر سایت در نسخه جدید باقی بمانند. پوشه uploads از مسیر wp-content/uploads سایت اصلی را به همان مسیر در ساب دامنه جدید کپی کنید.
نصب و بازیابی افزونهها
برای نصب افزونه هایی که قبلاً در سایت فعال بودهاند:
به phpMyAdmin بروید. جدول wp_options را باز کنید. عبارت active_plugins را جستجو و روی گزینه "Edit" کلیک کنید. در اینجا لیست افزونه های فعال سایت نمایش داده می شود. برای غیر فعال کردن همه افزونه ها، کافی است محتوای این فیلد را پاک کرده و ذخیره کنید. سپس از طریق داشبورد وردپرس > افزونه ها > افزودن، مجدداً همان افزونه ها را نصب و فعال نمایید. تنظیمات قبلی اکثر افزونه ها در دیتابیس باقی مانده اند و نیازی به تنظیم مجدد نیست. اگر پس از فعال سازی با ارور مواجه شدید، از مسیر wp-content/plugins افزونه مشکل دار را حذف و نسخه سالم آن را مجدداً نصب نمایید.
نصب قالب سایت
برای برگرداندن قالب فایل قالب را در مسیر wp-content/themes ساب دامنه آپلود کنید. در پیشخوان وردپرس، به بخش "پوستهها" رفته و قالب موردنظر را فعال نمایید. اگر قالب خریداری شده دارید، فایل درون ریز XML آن را از پشتیبان دریافت و مراحل زیر را طی کنید:
- از منوی "ابزارها" > "درونریزی" را انتخاب نمایید.
- افزونه درونریز را نصب و فعال کنید.
- فایل XML را آپلود و روی "بارگذاری و درونریزی" کلیک نمایید.
- مطالب را به کاربر خاصی نسبت دهید و تیک "دانلود فایلهای پیوست" را نیز بزنید.
- روی "تأیید" کلیک کرده و منتظر پایان فرایند باشید.
انتقال سایت به مسیر اصلی
اکنون که سایت در ساب دامنه به خوبی اجرا میشود. پوشه ساب دامنه را به جای پوشه اصلی سایت (Public_html) منتقل کنید. از طریق دیتابیس، آدرس دامنه سایت را به دامنه اصلی تغییر دهید. برای جلوگیری از هرگونه مشکل احتمالی، قبل از انتقال نهایی، از کل هاست نسخه پشتیبان تهیه کنید.
نکات راه اندازی مجدد سایت وردپرسی پس از هک شدن از طریق دیتابیس
با رعایت مراحل بالا، میتوانید سایت وردپرسی هک شده خود را بدون نیاز به ورود به پیشخوان و بدون از دست رفتن اطلاعات، پاک سازی و دوباره راه اندازی کنید. حتماً در آینده از سایت به صورت منظم بک آپ تهیه کنید و برای افزایش امنیت، استفاده از قالب و افزونه های معتبر را جدی بگیرید.