با توجه به اینکه امروزه انواع بدافزارها و ویروس ها در فضای وب وجود دارد که میتواند به سایت هایی که آپدیت نشده و نا امن بوده و از افزونه های نامعتبر نیز استفاده میکند، به راحتی نفوذ کرده و آن را هک نماید. با هک شدن سایت بازدیدکنندگان سایت نیز در معرض حمله ویروس و تروجان قرار گرفته و در رتبه سایت شما تاثیر بگذارد. در نتیجه زمانی که این اتفاق رخ میدهد بدون تلف کردن وقت باید سریعا نسبت به پاکسازی آن اقدام نمود تا بتوان از ضررهای بعدی جلوگیری کرد.
غفلت در به روز رسانی وردپرس باعث اقدامات مخرب از سمت هکر میشود. هکرها ممکن است یک فایل مخفی در دایرکتوری که هنگام به روز رسانی، تغییری در آن دایرکتوری ایجاد نمی شود، قرار دهند و یا قطعه کدی به قالب شما اضافه کنند و یا به سادگی یک اکانت برای خود ایجاد نموده و سپس به این اکانت دسترسی مدیریت بدهند. هر کدام از این اقدامات حتی پس از اصلاح سایت بعد از هک، به آنها اجازه میدهد که عملیات خرابکارانه خود را مجدد انجام دهند.
به همین جهت برخی اعمال پس از پاک سازی کامل و برگرداندن مجدد سایت وردپرسی که دچار حمله شده، توصیه می شود :
تهیه بکاپ از سایت و دیتابیس
یک کپی از سایت هک شده خود تهیه نمایید زیرا که ممکن است شامل فایل ها و اطلاعات ارزشمند شما باشد و شما نمی خواهید این اطلاعات از دست برود.
تهیه یک کپی از تمام فایل های آپلود شده
از تمامی تصاویری که در سایت آپلود میکنید یک کباپ تهیه کنید تا در صورت نیاز بتوانید آنها را جایگزین فایل های مخرب نمایید. زیرا تصاویری که خودتان آپلود کرده اید بر خلاف تصاویری که در قالب وجود دارد جایگزینی آن ها دشوار تر است. اگر فایل های غیر تصویری مثل فایل های فشرده، پلاگین ها و یا اسکریپت های پی اچ پی در معرض نفوذ قرار گرفتند بهترین راه حل این است که یک کپی جدید از این فایل ها را از منابع اصلی و معتبر تهیه کنید.
دانلود نسخه جدید وردپرس و تمام پلاگین های مورد نیاز و قالب از منابع معتبر
شما میتوانید از پلاگین به روز رسانی خودکار وردپرس استفاده نمایید تا هر زمان که نسخه جدید منتطر شد به صورت خودکار آپگرید شود. با این کار فایل های جدید جایگزین فایل های خاصی شده و فایل های قدیمی پاک نمیشوند. همچنین قالب و پلاگین های فعلی سر جای خود باقی می مانند و اگر سایتی که هم اکنون دچار حمله شده از این پلاگین برای بروزرسانی اتوماتیک استفاده کند راه برگشت مجدد نفوذگران دوباره فراهم می شود. بهترین راه حل این است که از ابتدا شروع کرده و فایل نصب را از ابتدا بارگذاری کنید. اگر از اسکریپت های نصب آسان وردپرس که شما را از دانلود، خروج از حالت زیپ و آپلود فایل های هسته وردپرس بی نیاز میکنند استفاده می کنید باز هم به تهیه نسخه جدید قالب و پلاگین هایی که قصد استفاده از آن ها را دارید نیازمند هستید.
توصیه میشود حتما نسخه جدید نصب شده که حتما از منابع معتبر آپلود شده و میتواند با استفاده از بانک اطلاعاتی موجود در هاست شما باشد (کپی فایلها در سرور و تغییرات در فایل پیکربندی و افزودن اطلاعات دیتابیس نسخه در سرور) و لذا محتوای سایت دست نخورده باقی خواهد ماند (در صورتیکه بانک اطلاعاتی سایت دستکاری نشده باشد) و تنها فایل های مورد نیاز مثل فایلهای استاتیک تصویری را میتوانید در صورت لزوم مجددا بازگردانی نمایید.
توجه شود که محتوای فایل ها با دقت بسیاری بررسی شود زیرا که معمولا هکرها نسخه های دیگری از فایل های مخرب که کم تر شناخته شده و ممکن است ویروس اسکنر آن را تشخیص ندهد، در فایل یا فولدرها برای استفاده جهت نفوذ بعدی کپی کنند.
پاک کردن همه فایل ها و فولدرهای مسیر وردپرس خود از طریق اف تی پی و یا فایل منجیر
زمانی که از تمامی فایل های مورد نیاز خود بکاپی تهیه کردید، به طور کامل محتوای دایرکتوری سایت خود را پاک نمایید. با این کار تمامی فایل های آلوده نیز به طور کامل حذف میشود. این کار را هم از طریق اف تی پی و هم از طریق فایل منیجر در کنترل پنل هاست خود می توانید انجام دهید.
آپلود مجدد فایل های جدید (شامل هسته ورد پرس، قالب، پلاگین ها و فایل ها)
در صورتی که از نرم افزارهای مدیریت FTP مانند Cuteftp و یا Filezilla برای آپلود استفاده میکنید، می توانید تعداد کانکشن های هم زمان برای اینکه زمان آپلود شما کوتاه تر شود را افزایش دهید. در نرم افزار فایل زیلا می توانید به مسیر زیر بروید :
“Edit -> Settings -> File transfer settings”
به روز رسانی دیتابیس جهت پشتیبانی از نسخه جدید وردپرس
با این کار هر تغییری که در ساختار دیتابیس شما برای پشتیبانی از نسخه جدید وردپرس لازم باشد اعمال می شود.
این آپگرید در فایلی در مسیر زیر قرار می گیرد.
/wp-admin/upgrade.php
تغییر بلادرنگ رمز عبور به مدیریت وردپرس
در صورتی که بیش از یک کاربر به مدیریت وردپرس دسترسی داشته و دسترسی به آن ها برای تغییر پسورد هایشان ندارید، تا زمان تغییر پسوردها لازم است سطوح دسترسی آنها تغییر داده شود. در صورت مشاهده کاربرانی که آنها را نمیشناسید ان ها را حذف نمایید.
اصلاح پست های آسیب دیده
هر لینک و یا آی فریم که داخل پست اضافه شده را پاک کرده و مطالب از دست رفته را دوباره ایجاد نمایید. کوئری زیر میتواند به شما در یافتن پست های مورد نفوذ کمک کند:
SELECT * FROM wp_posts WHERE post_content LIKE ‘%<iframe%’
UNION
SELECT * FROM wp_posts WHERE post_content LIKE ‘%<noscript%’
UNION
SELECT * FROM wp_posts WHERE post_content LIKE ‘%display:%’
اگر پیشفرض پیشوند جداول دیتابیس را تغییر نداده باشید می توانید این دستور را داخل پنجره کوئری در دیتابیس اجرا کنید و باید هر پستی که محتوای آن تغییر کرده و از طریق روش هایی مثل استفاده از تگ های iframe و noscript و همچنین استفاده از دستور display:none در استایل پست ها، از دید شما مخفی است را شناسایی نموده و آن را اصلاح کنید. برای اجرای این کوئری وارد کنترل پنل هاست (سی پنل) خود شده و روی آیکون phpMyAdmin کلیک کنید. در صفحه باز شده از گوشه سمت چپ روی دیتابیس خود کلیک کنید و در صفحه باز شده روی تب SQL کلیک کنید. سپس داخل کادر می توانید این کوئری را وارد کنید و Go را بزنید. توجه داشته باشید انواع متفاوتی از تزریق محتوا وجود دارد و این جستجو به صورت دستی برای پیدا کردن انواع مختلف از تزریق، راهکار بسیار مفیدی برای سایت هایی که دچار حمله شده اند میباشد.