امروزه یکی از محبوب ترین سیستم های مدیریت محتوا یا CMS ، وردپرس شناخته شده است که بیش از 60 درصد سایت هایی که در زمینه مدیریت محتوا فعالیت میکنند از پلتفرم وردپرس استفاده میکنند. با وجود محبوبیتی که WordPress در بین تیم های تولید محتوا پیدا کرده است ، توجه هکر ها و اسپمر ها را نیز به خود جلب کرده است. از این رو تامین امنیت وردپرس تبدیل به یکی از مهم ترین و اساسی ترین دغدغه های مدیران وب سایت های وردپرسی شده است.
ممکن است تصور کنید که سایت شما چه جذابیتی برای هکر ها میتواند داشته باشد ، اما زمانی متوجه اهمیت امنیت در وردپرس می شوید که وب سایت شما توسط هکر ها هک شده باشد . اما سوالی که اینجا مطرح میشود ، این است که چطور امنیت وردپرس را تامین کنیم ؟
کارشناسان رایانه کمک در ادامه این مطلب قصد دارند به موضوعاتی چون راه های افزایش امنیت وردپرس و جلوگیری از هک وردپرس بپردازند.
سوالاتی که معمولا از کارشناسان رایانه کمک می پرسند :
- چگونه امنیت وردپرس را بالا ببریم ؟
- بهترین افزونه امنیت وردپرس چیست ؟
- چطور جلوی نفوذ هکر ها و اسپم ها را از سایت وردپرس خود بگیرم ؟
- چرا سایت من انقدر هک می شود؟
- چند بار وب سایت ها هک میشوند؟
- علائم هک شدن یک وب سایت هک شده چیست ؟
- چه کارهایی وب سایت را ایمن می سازد؟
- چرا امنیت وردپرس بسیار مهم است ؟
برای دریافت پاسخ سوالات خود با رایانه کمک همراه باشید.
هدف شرکت رایانه کمک از ارائه مطلب راه های افزایش امنیت وردپرس بالا بردن میزان آگاهی شما برای رفع مشکلات وردپرسی می باشد اما اگر تمایل به کسب اطلاعات بیشتری در زمینه طراحی سایت بدون کد نویسی دارید حتما پیشنهاد میکنم از پکیج آموزشی 10مهارت رایانه کمک نیز دیدن کنید.
بد نیست نگاهی به تماس یکی از مشتریان رایانه کمک در مورد هک شدن سایت وردپرس خود بیندازیم ؛
کاربر : الو رایانه کمک
کارشناس : رایانه کمک بفرمایید.
کاربر : سلام من یک سایت فروشگاهی دارم اما وقتی URL سایت را سرچ میکنم یک صفحه نامربوط باز میشود.
کارشناس : حتما سایت شما هک شده است، برای امنیت سایت وردپرس خود اقدامی کردید ؟
کاربر : هک !!! من یک کسب و کار کوچک آنلاین دارم چرا سایت من هک شده !!
کارشناس : جای هیچگونه نگرانی نیست میتوانید با استفاده از سری آموزش های امنیت در وردپرس رایانه کمک مشکل سایت خود را برطرف کنید.
همانطور که مشاهده کردید حتی اگر فکر کنید وب سایت شما اطلاعات مهمی برای هکر ها ندارد باز هم ممکن است وب سایت شما مورد حمله هکر ها قرار گیرد در نتیجه بهتر است هرچه سریع تر موارد مورد نیاز برای بالابردن سطح امنیت سایت خود اقدام کنید.
با وجود اینکه وردپرس به عنوان یکی از کاربرپسند ترین و پراستفاده ترین سیستم های مدیریت محتوا شناخته شده است ، به طبع همواره بیشتر در معرض تهدیدات امنیتی قرار میگیرد.
البته این به این معنی نیست که وردپرس یک بستر ناامن باشد ! بلکه برعکس وردپرس میتوانید محیطی بسیار امن برای کسب و کار های اینترنتی باشد به شرط آنکه کارهای لازم برای بالابردن امنیت وب سایت خود را انجام دهید.
اهمیت امنیت وردپرس
بیشتر مدیران کسب کار های اینترنتی تصور میکنند چون کسب و کار گسترده ای ندارد امکان ندارد که وب سایت آنها هک شود اما بهتر است بدانید که این تصور کاملا غلط است زیرا هکر ها بطور معمول کاری بزرگ یا کوچک بودن کسب کار شما ندارند ، آنها گاهی اوقات فقط برای از بین رفتن اعتماد مشتریان کسب و کار شما، یا گاهی هم ممکن است افراد به دنبال سرقت داده های شما یا حذف پرونده های مهم شما نباشند فقط بخواهند با استفاده از منابع سرور شما ایمیل های اسپم ارسال کنند. آن ها برنامه هایی را بر روی سایت شما نصب می کنند که روزانه هزاران ایمیل اسپم ارسال کنند بدون اینکه شما متوجه این موضوع شوید.
بعضی از هکر ها هم ممکن است با قرار دادن یک سری کد های مخرب در کد های سایت شما اقدام به استخراج بیت کوین توسط مرورگر بازدیدکنندگان کنند.
با این وجود بهتر است حتما مسائل امنیتی سایت وردپرس خود را جدی بگیرید.
ما در اینجا روش های افزایش امنیت سایت وردپرس را به شما عزیزان آموزش خواهیم داد.
افزایش امنیت در وردپرس با بروزرسانی هسته وردپرس ، افزونه ها و قالب ها
همواره از به روز بودن نسخه وردپرس و اجزای آن مثل قالب و افزونه ها اطمینان حاصل کنید. ممکن است این موضوع برای شما کمی پیش پا افتاده بنظر برسد اما به روز نگه داشتن بستر و اجزای وردپرس یکی از امور حیاتی و مهم برای ایمن نگه داشتن وب سایت می باشد زیرا هکر ها در صورت پیدا کردن حفره های امنیتی در نسخه های قدیمی از آن ها استفاده میکنند.
اما اگر مدیریت شرکت هاستینگ شما این بروزرسانی ها را به صورت خودکار انجام می دهد نیازی نیست برای بروزرسانی های منظم امنیتی سیستم عامل سرور اقدامی کنید.
در غیر این صورت برای به روزرسانی های امنیتی خودکار می توانید از ابزار هایی مانند Composer ، NPM یا Ruby Gems استفاده کنید.
همچنین برای اینکه از به روز بودن تمامی اجزا و نرم افزار ها مطمئن باشید می توانید از ابزاری مانند Gemnasium برای ارسال اعلان های خودکار استفاده کنید.
انتخاب نام کاربری و رمز عبور مناسب برای مدیریت سایت
با وجود اینکه همه میدانیم رمز های عبور پیچیده امنیت بالاتری نسبت به رمز های ساده دارند اما باز هم افرادی هستند که این موضوع را نادیده میگیرند.
استفاده از کلمات عبور قوی برای سرور و داشبورد ادمین وب سایت برای محافظت از داده های سایت و اطلاعات کاربران بسیار مهم است.
استفاده از تکنیک رمزنگاری SHA1
برای بالابردن امنیت رمز های ذخیره شده در دیتابیس میتوانید از متد هش SHA1 استفاده کنید.
با کمک استفاده از متد hashing ، به جای اینکه رمز عبور شما به عنوان یک متن ساده و قابل مشاهده ذخیره شود ، رمز عبور شما به رشته ای طولانی از حروف و اعداد تبدیل شده و در دیتابیس سایت ذخیره میشود.
زمانی که وارد سایت میشوید و رمز عبور خود را وارد میکنید ، عبارت ورودی شما Hash شده و با رمز عبور هش شده ذخیره شده در دیتابیس مقایسه میشود ، در صورت یکسان بودن دو عبارت به شما اجازه ورود داده میشود.
زمانی که شما از این متد استفاده میکنید اگر هکر به سرور شما نفوذ پیدا کرد ، توانایی سرقت رمز عبور و اطلاعات کلیدی شما را نداشته باشد.
برای بکارگیری تکنیک SHA1 ابتدا وارد پنل هاست خود شوید و بر روی دیتابیس موردنظر خود کلیک کنید تا جدول های آن نمایش داده شود.
سپس جدول wp-users را پیدا کرده و بر روی آن کلیک کنید.
برای ویرایش دکورد مربوط به ادمین روی گزینه Edit کلیک کنید و در فیلد user-pass پسورد خود را وارد کنید.
سپس از لیست کشویی گزینه SHA1 را انتخاب کرده و تغییرات را ذخیره کنید.
استفاده از تکنیک هش Salt
شما میتوانید با استفاده از کلیک های امنیتی Salt تمامی اطلاعات مدیران و کاربران یک وب سایت را با استفاده از عناصری کاملا تصادفی رمزنگاری کنید.
تکنیک Salt اقریبا می توانید شنود اطلاعاتی تسوط هکر ها را غیرممکن سازد زیرا به ازای هر بار ورود مدیران و کاربران به وب سایت ، اطلاعات آنها دوباره با رشته های تصادفی رمزنگاری میشوند.
با وجود این تکنیک اگر سایت شما مورد حمله یا attach قرار گیرد ، تمامی کاربران Log out شده و مشکلی برای وب سایت شما به وجود نخواهد آمد.
برای بکارگیری تکنیک هش Salt ، بعد از اینکه وردپرس را نصب کردید وارد فایل wp-config.php شده و لینک ساخت کلید هش Salt وردپرس را در مرورگر خود باز کنید.
سپس کلید ساخته شده را با مقدار زیر جایگزین کنید و در نهایت فایل را ذخیره کنید.
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
اما اگر تسلط کافی به کد ها ندارید و نمی خواهید تغییر دستی در کد های وردپرس ایجاد کنید ، میتوانید برای استفاده از این تکنیک ، از افزونه Salt Shaker نیز استفاده کنید و در بازه های زمانی مشخص روزانه ، هفتگی و یا ماهیانه کلید های Salt خود را تغییر دهید.
تغییر نام مدیر سایت های وردپرسی
یک نکته جالبی که باید بدانید این است که هکر ها برای راحت کردن فرآیند هک با وارد کردن عبارت author=1?/ در انتهای آدرس سایت شما می توانند به راحتی نام کاربری مدیر سایت را پیدا کنند.
اما برای پنهان سازی نام کاربری مدیر سایت و تغییر آن می توانید از افزونه sx user name security استفاده کنید.
پس از نصب این افزونه به راحتی میتوانید شناسه کاربری خود را از منو کاربران تغییر دهید.
همچنین برای جلوگیری از دسترسی به حساب های کاربری بهتر است از افزونه sf author url control استفاده کنید.
شما با استفاده از این افزونه می توانید پیوند یکتای دسترسی به صفحه نویسندگان را ویرایش کنید وعبارت author را به عبارت دیگر تغییر دهید.
تغییر پیشوند جداول دیتابیس
گاهی اوقات حملات از طریق SQL Injection به اطلاعات وب سایت شما برای تغییر دادن یا به سرقت بردن از طرف هکر ها انجام میشود که یکی از روش های جلوگیری این موضوع ، تغییر دادن پیشوند جداول دیتابیس میباشد.
بطور پیشفرض پیشوند جدول های وردپرس wp- می باشد ، قبل از اینکه اقدام به نصب وردپرس کنید بهتر است از طریق فایل wp-config.php مقدار $table_prefix را از wp- به مقدار دیگر تغییر دهید.
شما با ایکار در واقع مسیر دسترسی به جدول های دیتابیس سایت خود را تغییر داده و راه حمله از این طریق را برای هکر ها مسدود کردید.
اما اگر وردپرس را نصب کردید می توانید از طریق phpmyadmin نیز پیشوند جداول خود را تغییر دهید.
پس از ورود به صفحه phpmyadmin سایت خود ، دیتابیس موردنظر را انتخاب کرده و روی گزینه sql کلیک کنید. سپس قطعه کد زیر را وارد کنید :
RENAME table wp_commentmeta TO mywp_commentmeta;
RENAME table wp_comments TO mywp_comments;
RENAME table wp_links TO mywp_links;
RENAME table wp_options TO mywp_options;
RENAME table wp_postmeta TO mywp_postmeta;
RENAME table wp_posts TO mywp_posts;
RENAME table wp_terms TO mywp_terms;
RENAME table wp_termmeta TO mywp_termmeta;
RENAME table wp_term_relationships TO mywp_term_relationships;
RENAME table wp_term_taxonomy TO mywp_term_taxonomy;
RENAME table wp_usermeta TO mywp_usermeta;
RENAME table wp_users TO mywp_users;
حال وارد فایل wp-config.php شوید و مقدار $table_prefix را از wp- به مقدار دیگر تغییر دهید.
نکته : فراموش نکنید پیش از این اقدام از دیتابیس خود یک نسخه پشتیبانی backup بگیرید.
محدود کردن تعداد دفعات وارد کردن نام کاربری و رمزعبور
یکی از حملات معروف به سایت های وردپرس ، حمله ای به نام Brute force می باشد که با استفاده از این روش هکر ها تلاش می کنند تا با حدس زدن های متوالی و تست عبارات منطقی مختلف ، رمز عبور مدیر وب سایت را پیدا کنند.
البته این کار بصورت دستی انجام نمیشود بلکه تویط ربات های نرم افزاری انجام میشود که برای جلوگیری از این حمله بهتر است از افزونه limit login attemts استفاده کنید.
در حالت پیش فرض وردپرس به شما اجازه می دهد تا به دفعات نامحدود برای ورد به سایت تلاش کنید اما شما با نصب افزونه لیمیت لاگین می توانید وارد تنظیمات افزونه شده و تعداد دفعات وارد کردن نام کاربری و رمزعبور را محدود کنید و کاربرانی که پس از چندبار ورد ناموفق داشتند تحریم شوند.
همچنین می توانید لیستی از کاربران تحریم شده در ایمیل خود دریافت کنید و IP آن ها را بطور دائم مسدود کنید.
رمزگذاری کردن پوشه wp-admin
پوشه wp-admin یکی از مهم ترین پوشه های وب سایت وردپرسی است که محافظت از آن جزء مهم ترین اقدامات امنیتی سایت محسوب میشود.
با رمگذاری بر روی پوشه wp-admin شما می توانید یک لایه احراز هویت دیگر به پنل مدیرتی سایت خود اضافه کنید.
برای اینکار وارد کنترل پنل هاست خود شوید و روز پوشه wp-admin راست کلیک کنید و گزینه password protect را انتخاب کنید.
در صفحه ای که باز میشود ابتدا گزینه Password protect this directory یا Directory Privacy را انتخاب کنید و در فیلد Enter a name for the protected directory نام دلخواه خود را وارد کرده و بر روی دکمه Save کلیک کنید.
سپس به صفحه قبل بازگردید و یک نام کاربری و رمز عبور قدرتمند وارد کرده و بر روی دکمه Save کلیک کنید. در نهایت ، نام کاربری و رمز عبور انتخابی خود را وارد کرده و بر روی add or modify the authorized user کلیک کنید.
و در آخر برای جلوگیری از ایجاد مشکل در عملکرد ajax سایت ، قطعه کد زیر را در فایل htaccess. اضافه کنید:
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
<Files/>
محافظت از پوشه wp-include
گاهی اوقات حمله از طریق آپلود فایل هایی که دارای اسکریپت های مخرب هستند صورت میگیرد.
این فایل ها و اسکریپت های مخرب معمولا در پوشه wp-include پیدا میشود.
برای جلوگیری از دسترسی هکر ها به این پوشه باید قطعه کد زیر را در فایل .htaccess قرار دهید :
#Block the include-only files.
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
محافظت از فایل wp-config
یکی دیگر از فایل های مهم وردپرس که اطلاعات کلیدی سایت را در بر دارد ، فایل wp-config می باشد که برای حفظ امنیت فایل wp-config می توانید موارد زیرا را انجام دهید :
مسدود کردن دسترسی به فایل wp-config
برای بلاک کردن دسترسی فایل wp-config وارد فایل .htaccess شوید و قطعه کد زیر را وارد کنید:
<files wp-config.php>
order allow,deny
deny from all
</files>
انتقال فایل wp-config
فایل wp-config بصورت پیش فرض داخل فولدر root وب سایت یعنی همان پوشه public-html قرار دارد اما برای حفظ امنیت این پوشه میتوانید آن را به شاخه بالاتر یعنی home انتقال دهید .
تغییر نام فایل wp-config
بعد از اینکه مسیر فایل را تغییر دادید بهتر است نام آن را هم تغییر دهید. به عنوان مثال نام فایل خود را rayanekomak.php قرار داده و سپس در فولدر public-html فایلی به نام wp-config.php ایجاد کرده و مسیر فایل wp-config جدید را به صورت زیر در آن قرار دهید :
<?php include(‘/home/usersite/rayanekomak.php’); ?>
تغییر مسیر ورود به پیشخوان وردپرس
۱- در ابتدا وارد کنترل پنل هاست خود شوید :
بعد از ورود به public_html به دنبال فایلی به نام wp-login.php بگردید با ویرایش این فایل آدرس مدیریت وردپرس به لینکی که میخواهید تغییر میکند.
حالا باید روی فایل wp-login.php راست کلیک کنید و گزینه rename را بزنید و نام دلخواه خود را که میخواهید دقیقا همان لینک ورود به بخش مدیریت باشد را بنویسید، دقت کنید که .php باید در انتها عبارت حتما قرار بگیرد.
۲- روی فایلwp-loginکلیک راست نمایید و گزینه rename را انتخاب نمایید و تغییر دهید :
3- وارد فایل جدیدی که ساختید شوید، روی این فایل راست کلیک کنید و Edit را انتخاب نمایید تا وارد کد های این بخش شوید حالا باید تمام قسمت هایی که عبارت wp-login.php وجود داردرا با نام جدیدی که انتخاب کرده اید جایگزین کنید و save change رو کلیک نمایید.
4-پس از انجام مراحل فوق وارد پوشه wp-includes شوید و فایل general-template.php را ویرایش کنید، در این قسمت تمام عبارتهای wp-login.php را به نام دلخواه خود قرار دهید به جز خط ۳۲۰ که باید عبارت wp-login.php را با index.php بایگزین نمایید و بعد فایل رو ذخیره کنید.
کلام آخر
امیدوارم از مطلب راه های افزایش امنیت وردپرس استفاده مفید برده باشید شما میتوانید ادامه راه های تامین امنیت وردپرس را در قسمت دوم سری آموزش های امنیت در وردپرس مطالعه کنید.خدمات پشتیبانی آنلاین رایانه کمک همیشه همراه شما خواهد بود.
قابل توجه شما کاربر گرامی: محتوای این صفحه صرفاً برای اطلاع رسانی است در صورتی که تسلط کافی برای انجام موارد فنی مقاله ندارید حتما از کارشناس فنی کمک بگیرید.