وردپرس یکی از رایجترین و پراستفادهترین سیستم های مدیریت محتوا (CMS) میباشد و این موضوع باعث میشود که بیشتر مورد توجه هکرها و نفوذگرها (attacker) قرار بگیرد.
امنیت وبسایتهای وردپرسی، یکی از مهمترین موضوعاتی است که باید به آن توجه داشت و لازم است تا موارد و اقداماتی را انجام داد تا یک وبسایت با امنیت بالا داشته باشیم.
هستهی وردپرس توسط بیش از صدها توسعهدهنده (developer) بازبینی و بهروز میشود و امنیت آن تا حد بسیار بالایی تامین میشود.
با این حال اقداماتی وجود دارد که با انجام و رعایت آن، میتوانیم امنیت وبسایت وردپرسی را به مقدار زیادی افزایش دهیم.
برای اطلاع از آخرین اخبار و اطلاعات وردپرس میتوانیم به صفحهی رسمی وبسایت وردپرس، مراجعه کنید.
همینطور آخرین اخبار و اطلاعات مربوط به وردپرس به صورت پادکست، در این لینک در دسترس میباشد.
چرا امنیت وبسایت مهم است ؟
در صورت هکشدن، اطلاعات وبسایت شما ممکن است حذف و یا تغییر داده شود.
همینطور در صورت هک شدن، ممکن است اطلاعات کاربران و مشتریان مانند اطلاعات خرید، آدرس و مشخصات شخصی، شماره همراه و … افشا شود که باعث خدشهدار شدن اعتبار وبسایت و از دسترفتن اعتماد کاربران خواهد شد.
هکشدن، ویروسیشدن یا از دسترس خارج شدن وبسایت، ضربه سنگینی به اعتبار وب سایت وارد میکند و از دست رفتن کاربران و کاهش فروش و خدمات را در پی خواهد داشت.
نقش تنظیمات سرور بر امنیت وبسایتهای وردپرسی
یکی از مهمترین موارد امنیت وبسایتها، به خصوص وبسایتهای وردپرسی، داشتن یک هاست مطمئن و با کیفیت بر روی یک سرور قوی و با امنیت بالاست، که به خوبی کانفیگ شده باشد و موارد امنیتی در آن به خوبی رعایت شده باشد.
در هاستهای وردپرس و سایر هاستهای پربازدید، هاست حرفه ای و هاست اختصاصی پارسوبسرور، تنظیمات لازم بر افزایش امنیت روی سرور انجام شده است و اسکریپتها و ماژولهای امنیتی بر روی سرور نصب و کانفیگ شده است تا امنیت هاست و وبسایت از سمت سرور تامین باشد.
هک و ویروسی شدن وردپرس
از جمله دلایل ضعفهای امنیتی و دلیل هک و ویروسی شدن وردپرس، مربوط به قالب و افزونههای وردپرسی است.
قالب و افزونههای وردپرس توسط شرکتهای مختلف توسعه داده میشوند و امکاناتی را به هسته اصلی آن اضافه میکنند.
چنانچه کدنویسی قالب و افزونهها اصولی نباشد و موارد امنیتی در زمان طراحی و کدنویسی افزونه رعایت نشده باشد، باعث ایجاد ضعفهای امنیتی میشود که نفوذپذیری وردپرس را تحت تاثیر قرار میدهد.
در صفحه زیر لیستی از افزونهها و دلیل آسیب پذیری آنها، با توضیحات کوتاه لیست شده است :
https://patchstack.com/database
عموما شرکتهای بزرگ توسعه دهنده قالب ها و افزونه های وردپرسی، در کنار تیم تحقیق و توسعه، یک واحد با نام امنیت نیز برای بررسی امنیت قالب و افزونه و افزایش ضریب امنیتی محصولات دارند که به صورت مداوم در حال بروزرسانی و بررسی وضعیت امنیت آنها هستند و با انتشار بهروز رسانیهای مداوم، امنیت قالب و افزونه های منتشر شده را بالا میبرند.
متاسفانه به دلیل تحریمها و عدم دسترسی به وبسایت اصلی قالب و افزونه و عدم امکان پرداخت آنلاین، اکثر وبسایتهای ایرانی مجبور به استفاده از قالب ها و افزونههای Null شده و دستکاری شده هستند که در اغلب موارد قابلیت بهروز رسانی آنها غیرفعال شده است و این باعث آسیب پذیری و پایین آمدن ضریب امنیت وردپرس شود.
اقدامات پیشنهادی برای افزایش امنیت وبسایتهای وردپرسی :
1- رمز عبور قوی و غیرقابل حدس:
عموما اولین موردی که باید در ایمنی یک سایت رعایت شود، انتخاب رمز عبور قوی میباشد که شامل حروف کوچک، حروف بزرگ، اعداد و کاراکترهای خاص بوده تا قابل حدس نباشد.
بهتر آن است رمز عبور به صورت دورهای و ماهانه تغییر کند.
2- بک آپ گیری روزانه:
از دست رفتن اطلاعات، یکی از بدترین اتفاقاتی است که مدیر یک سایت می تواند با آن مواجه شود. با داشتن نسخه پشتیبان، میتوانید در صورت بروز مشکل، اطلاعات را بازگردانی کنید.
به همین دلیل پیشنهاد میشود به صورت دوره ای، نسخه پشتیبان کامل تهیه و دانلود شود.
3- تغییر آدرس پیشخوان وردپرس:
لینک ورود به پیشخوان وردپرس به صورت پیش فرض https://yourdomain.com/wp-admin میباشد. تغییر این لینک باعث میشود تا هکرها نتوانند از لینک ورود پیش فرض به پیشخوان سایت دسترسی داشته باشند.
تمام افزونههای امنیتی وردپرس از جمله وردفنس (wordfence)، امکان تغییر لینک پیش فرض پیشخوان وردپرس را دارند.
4- استفاده نکردن از نام کاربری پیش فرض admin :
به صورت پیشفرض نام کاربری مدیر وردپرس admin است.
بهتر است زمان نصب وردپرس، این مقدار به یک مقدار غیرقابل حدس تغییر کند.
5- انتقال فایل wp-config.php به یک پوشه بالاتر و روت اصلی هاست:
هسته وردپرس به صورت پیش فرض در کنار فایل های اصلی وردپرس مانند index.php به دنبال فایل wp-config.php میگردد. یکی از راه های افزایش امنیت سایت های وردپرسی، انجام تنظیماتی برای تغییر مسیر این فایل به یک پوشه بالاتر می باشد.
7- عدم استفاده از افزونههای ناشناخته:
یکی از مواردی که باعث هک شدن و ویروسی شدن وبسایتهای وردپرسی میشود، استفاده و نصب افزونههای Null شده و افزونههایی با منابع نامشخص و اغلب رایگان است.
بیشتر این افزونهها دستکاریشده هستند و کدهای مخرب به آن اضافه شده است. ممکن است بعد از نصب آنها، سایت شما به سایتهای دیگر ارجاع (redirect) شود.
مواردی که نشان می دهد وبسایت شما آلوده است:
مصرف بالای منابع،
ارجاع به صفحات سایتهای ناشناخته،
یا نمایش صفحه سفید بدون محتوا در صفحه نخست وبسایت است.
در صورت ویروسی شدن وبسایت، عموما کدهای ناشناختهای به ابتدای فایل index.php اضافه میشوند و همینطور ممکن است کدهایی به فایل htaccess اضافه شوند که عملکرد وبسایت را مختل کنند.
چنانچه هر کدام از این موارد را مشاهده کردید باید از یک وردپرس کار برای رفع کدهای مخرب و ایمن سازی وبسایت کمک و مشاوره بگیرید.
8- آزمایش افزونههای جدید، بروزرسانیها و تغییرات بر روی سایت demo و یا آزمایشی:
توجه داشته باشید در برخی موارد به هنگام بهروزرسانی وردپرس ممکن است افزونههای نصب شدهی سایت به دلیل عدم سازگاری باعث بروز تغییرات ناخواسته شوند.
پیشنهاد میشود یک وبسایت مشابه با سایت اصلی با همان افزونهها و قالب راهاندازی شود و برای تست افزونهها و بهروزرسانیها و یا تغییرات دیگر، ابتدا از آن استفاده کرد و بعد از تست و بررسی و اطمینان از صحت عملکرد و عدم تداخل، بر روی وبسایت اصلی نصب و اعمال شود. (تهیه نسخ پشتیبان کامل قبل از بهروزرسانی توصیه میشود.)
9- انتخاب رمز بر روی پوشه wp-admin :
انتخاب رمز بر روی پوشه wp-admin باعث میشود که فقط کسانی که نام کاربری و رمز این پوشه را دارند به آن دسترسی داشته باشند و صفحه ورود فقط برای آنها باز شود.
البته افزونههایی نیز برای این مورد وجود دارند که با کمک آن میتوانید ورود به پیشخوان را با کمک این افزونهها به صورت دو مرحلهای فعال کنید.
با استفاده از این آموزش می توانید بدون نیاز به افزونه ای و صرفا از داخل سی پنل بر روی پوشه wp-admin رمز قرار دهید.
10- محدود کردن دسترسی به آی پی خاص:
در صورتی که آی پی استاتیک دارید، میتوانید ورود به بخش مدیریت را با استفاده از فایل htaccess فقط به آی پیهای خاص محدود کنید.
در این صورت افراد مهاجم که آی پی آنها متفاوت است، پیام خطا دریافت میکنند و صفحه ورود برای آنها باز نخواهد شد.
11- نصب افزونههای امنیتی مانند iThemes Security و یا wordfence:
این افزونهها به صورت تخصصی برای افزایش امنیت وبسایتهای وردپرسی نوشته شدهاند که تنظیمات متنوعی دارند.
از جمله امکانات این افزونهها برای افزایش امنیت وبسایت شما:
محدود کردن تلاش برای ورود ناموفق
قرار دادن ip در فهرست مسدودی
و ارسال گزارشهای دورهای است
البته نصب و تنظیم صحیح این افزونهها نیاز به دانش فنی نیز دارد.
در صورت نیاز باید از یک وردپرس کار مشورت و راهنمایی بگیرید.
12- به روز نگه داشتن وردپرس، افزونهها و قالب وبسایت:
و در نهایت، همواره توصیه میشود تا وردپرس و افزونههای آن به آخرین نسخهی پایدار، به روز شوند.
اگر شما هم در مورد افزایش امنیت در وردپرس، نکته ای را مد نظر دارید میتوانید در بخش نظرات همین مقاله ارسال کنید.
نتیجه گیری :
با استفاده از نکات فوق می توانید امنیت وب سایت وردپرسی خود را تا حد خوبی افزایش دهید. با این حال توجه داشته باشید که امنیت یک موضوع نسبی است و امکان ارائه تضمین همیشگی آن وجود ندارد. اما عدم رعایت نکات فوق می تواند به شکل جدی اطلاعات سایت شما را به خطر بیندازد.