راهنمای جامع امنیت وردپرس

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

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

متدهای زیر شامل ویرایش فایل .htaccess می باشد. ویرایش htaccess و سایر موارد دارای ریسک می باشد. پس حتما قبل از انجام تغییرات، اطمینان حاصل کنید که پشتیبان تهیه کرده اید.

حمله نیروی بی رحم (Brute Force)

یکی از روش‌های محبوبدر بین هکر ها ، برای وب سایت های وردپرسی، حمله brute force است. در حمله brute force،  هکر تلاش می کند تا با ترکیب کاراکترهایی که حدس میزند (ممکن است نام کاربری و رمز عبور) صحیح باشد به یک حساب کاربری وردپرسی ورود کند . برخی از نرم افزارهایی که برای حمله brute force در نظر گرفته شده اند این عملیات را انجام می دهند.

در اینجا برخی از بهترین روش های امنیتی وردپرس برای جلوگیری از Brute Force ارائه شده است.

نام کاربری و رمز عبور متفاوت باشند

نام کاربری پیش‌فرض پایگاه داده وردپرس admin است ، خیلی عالی میشه اگر نام کاربری دیگر admin نباشد.مثلا نام خودتون رو استفاده کنید یا نام کاربری را روی کلمه ای منحصربفرد تنظیم کنید تا هک نتواند به راحتی آن را حدس بزند.

اگر هکری نام کاربری شما را بدانند، نصف مسیر برای حمله brute force را رفته است.

اگر نام کاربری و رمز عبرو یکی باشد، انجام حمله brute force خیلی خیلی راحت تر می گردد.

رمز عبور قوی استفاده کنید

گذرواژه‌های قوی حساب شما را از حملات brute force ایمن می‌کند. اجرای یک حمله brute force بر روی حساب های دارای رمز عبوری که دارای موارد زیر است به سختی انجام می شود.

  • طول رشته حداقل 8 کاراکتر (بهتر است بیشتر از 16 کاراکتر باشد)
  • جروف الفبا
  • کاراکتر عددی
  • کاراکتر های خاص

استفاده از Captcha برای صفحات ورود و ثبت نام

فعال کردن کپچا برای صفحه ورود شما باعث می‌شود هکرها نتوانند یک حمله brute force به حساب شما انجام دهند، زیرا کپچا پس از هر تلاش دوباره تغییر می کند.

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

محدود کردن تلاش برای ورود به سیستم

به منظور جلوگیری از حمله brute force. ممکن است مجبور  شوید تلاش های ورود به سیستم را به حساب وردپرس خود را محدود کنید . این کار را می توان با کمک یک افزونه امنیتی وردپرس به نام  Limit Login Attempts به سیستم انجام داد، که در آن حساب وردپرس پس از چند تلاش و زمان ناموفق از پیش تعیین شده قفل می شود. این روش تضمین می کند که حساب کاربری وردپرس شما به یک حمله Brute Force ایمن باشد.

ورود را وابسته به آدرس IP نمایید

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

درس IP فعلی و آدرس IP مکانی که اغلب به آن سفر می کنید را در لیست سفید تنظیم کنید تا بتوانید فقط در آن مکان ها به حساب وردپرس خود وارد شوید  و حساب کاربری وردپرس را از حملات brute force ایمن کنید.

از طرف دیگر، می توانید به صورت دستی یک فایل .htaccess جداگانه برای پوشه wp-admin ایجاد کنید که آدرس های IP مجاز را فهرست می کند.

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName \"WordPress Admin Access Control\"
AuthType Basic
<LIMIT GET>
          order deny,allow
          deny from all
          # whitelist Khosro Nazari IP address of home
          allow from 00.000.000.000
          # whitelist Khosro Nazari IP address of office
          allow from 000.000.00.000
</LIMIT>

کد بالا تلاش برای ورود به حساب کاربری وردپرس را فقط به 2 آدرس IP ذکر شده با عنوان 000.000.000.000 (نمونه) را محدود می کند. بهتراست به جای 000.000.000.000 از آدرس های IP خانه و محل کار خود استفاده کنید.

اسکریپت های مخرب، کد هایی هستند که گاهی اوقات به پایگاه داده وردپرس تزریق می شوند. پیدا کردن اسکریپت های بد در پایگاه داده وردپرس بسیار دشوار است.

این اسکریپت‌های مخرب می‌توانند به‌عنوان عناصر کلیدی و جذب کننده ترافیک سئو برای وب سایت شما عمل کنند. آنها مانند تروجان ها عمل می کنند که در ظاهر مفید ظاهر می شوند و فعالیت های مخرب خود را در پس زمینه انجام می دهند. در اینجا چند نکته برای جلوگیری از آن وجود دارد.

سایت خود را اسکن کنید و آدرس های IP شناخته شده، که برای هکرها هستند، را مسدود کنید

همچنین به شما این امکان را می‌دهد که آدرس‌های IP را که تلاش می‌کنند به حساب شما وارد شوند و سایر آدرس های تشخیص داده شده را مسدود کنید.

از افزونه های ثالث خودداری کنید

نصب افزونه از منابع غیر از منابع قابل اعتماد، مانند افزونه های نال شده، اسکریپت های مخرب را به پایگاه داده وردپرس شما تزریق می کند.

از افزونه های ضد بدافزار استفاده کنید

حذف دستی اسکریپت های مخرب برای یک کاربر تقریباً غیرممکن است. افزونه‌های ضد بدافزار متعددی برای استفاده در وردپرس موجود است که پایگاه داده وردپرس شما را به‌طور منظم برای یافتن اسکریپت‌های مخرب اسکن می‌کنند و با کسب اجازه از شما اسکریپت های مخرب یافت شده را حذف می‌کنند.

افزونه‌های مفید امنیتی

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

 Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (\\<|%3C).*script.*(\\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\\[|\\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\\[|\\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

اسکن اسکریپت های مخرب در چندین فایل htaccess

فایل‌های htaccess. آلوده به پایگاه داده وردپرس تزریق می‌شوند تا ناآگاهانه به برخی از وب‌سایت‌های دیگر هدایت شوند. این باعث می شود که گوگل وب سایت شما را به عنوان هرزنامه شناسایی کند. به طور منظم از پایگاه داده وردپرس خود یک نسخه پشتیبان کامل بگیرید تا مطمئن شوید که ایمن هستید.

یک سرویس میزبانی خوب انتخاب کنید

برخی از ارائه دهندگان خدمات هاستینگ رایگان قابل اعتماد نیستند. به هر حال شما برای آنها سودی دارید که در حال ارائه خدمات رایگان به شما هستند.

اکثر خدمات دهندگان رایگان ممکن است اسکریپت های مخرب را به پایگاه داده وردپرس شما برای فرآیند ردیابی و ارتقاء تزریق کنند. کسی چه می داند؟! بنابراین، از این ارائه دهندگان خدمات میزبانی غیر قابل اعتماد خودداری کنید.

بدانید که در ابتدا همه چیز رو به راه است ، زمانی متوجه می شوید که کار از کار گذشته است.

به سراغ ارائه دهندگان هاست مورد اعتمادی بروید که ممکن است پولی باشند. و معمولا پول خوبی بابت خدمات به شما دریافت می کنند.

از طرفی ارائه دهندگان خدمات هاستینگ باید در اسرع وقت به شما پاسخگو باشند. این خود نشانه پشتیبانی خوب است.

از قالب های نال شده اجتناب کنید

قالب های نال شده غیرقابل اعتماد هستند و به احتمال زیاد حاوی اسکریپت های مخربی هستند که به پایگاه داده وردپرس شما تزریق می شوند.

قالب های مورد اعتماد نصب کنید مثلا اگر قالب حرفه ای است و داپم به شما پشتیبانی ارائه می دهد میتواند مورد خوبی باشد. این مجموعه ها با تجربیات چندین و چند ساله قالب هایی طراحی می کنند که نه تنها به لحاظ امنیتی بلکه به لحاظ کارایی و سئو نیز قابل اعتماد و اتکا هستند.

بسیاری از ارائه دهندگان قالب ادعای قالب های بهینه و ایمن را به صورت رایگان میکنند، به سادگی از آنها اجتناب کنید. چرا که مشک آن است که خود ببوید نه آنکه عطار بگوید.

نکات مهم دیگر

روش های دیگری نیز وجود دارد که هکرها برای هک حساب وردپرس از آن ها استفاده می کنند. برای ایمن سازی حساب وردپرس خود باید چند قدم مهم دیگر بردارید. برخی از مهم ترین آنها در ادامه ذکر شده است.

احراز هویت دو عاملی را فعال کنید

احراز هویت دو مرحله ای یک ویژگی امنیتی مازاد است که توسط بسیاری از افزونه ها ارائه می شود.

دسترسی فایل های مدیریتی وردپرس را ببندید

به‌طور پیش‌فرض، وردپرس فایل‌های مدیریتی خود را فقط برای مدیران قابل مشاهده کرده است. با این حال، گاهی اوقات ممکن است لازم باشد که دسترسی فایل های مدیریتی وردپرس را دستی ببندید. بنابراین دسترسی فایل‌های مدیریتی وردپرس را که فقط برای مدیر قابل مشاهده است روی cpanel تنظیم نمایید.

اگر دسترسی فایل‌های مدیریتی وردپرس را به صورت عمومی تنظیم کنید، هکر به راحتی به ساختار پایگاه داده وردپرس شما نفوذ کرده و هک کردن سیستم وردپرسی شما آسان‌تر خواهد بود.

از robots.txt برای جلوگیری از دسترسی به فایل های مدیریت در پایگاه داده وردپرس خود استفاده کنید. کد زیر را به فایل robots.txt اضافه کنید.

 #User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /wp-content/themes/
Disallow: */trackback/
Disallow: */feed/
Disallow: /*/feed/rss/$
Disallow: /category/*

خطرناک ترین ویژگی chmo 777 است که به عموم و همه بازدیدکنندگان امکان مشاهده، ویرایش یا تغییر پایگاه داده وردپرس را می دهد. اسکریپت های مخرب حتی می توانند این تنظیمات را تغییر دهند، بنابراین مهم است که به طور منظم حریم خصوصی خود را در نظر بگیرید.

برای درک عدد ۷۷۷ میتوانید به آموزش لینوکس مقدماتی برای هکرها مراجعه نمایید.

به بخش نظرات رفته و پیوندهای موجود در نظرات را حذف کنید

نزدیک به 70 درصد نظرات هرزنامه (اسپم) هستند. بهتر است  فقط به کاربران ثبت نام شده اجازه دهید تا در مورد پست های وبلاگ شما نظر دهند.

همچنین، می‌توانید پیوندها (آدرس های اینترنتی) یا HTML را در نظرات با کمک افزونه‌های مناسب برای این منظور غیرفعال کنید.

همه چیز بروزرسانی کنید

نسخه های قدیمی وردپرس آسیب پذیر هستند. بنابراین نسخه های جدیدتر وردپرس برای رفع اشکالات و آسیب پذیری ها منتشر می شوند. اگر از نسخه قدیمی وردپرس استفاده می کنید در برابر هکرها آسیب پذیر هستید.

به همین ترتیب،  فراموش نکنید که افزونه های قدیمی را به روز کنید. پلاگین های قدیمی تر در برابر حملات آسیب پذیرتر هستند. از افزونه هایی که حدود دو سال است که بروزرسانی نشده اند و رتبه پایینی دارند خودداری کنید.

این یکی از بهترین کار هایی است که باید انجام دهید.

حذف هر چیزی که نسخه وردپرس را فاش می کند

ممکن است متوجه شده باشید که برخی نسخه های وردپرس آسیب پذیر هستند و آخرین نسخه آسیب پذیری ها را برطرف کرده است. هکرها به نسخه وردپرس را بررسی می کنند و آسیب پذیری های آن را تحلیل می کنند. اگر آسیب پذیری موجود باشد از طریق آن به سیستم شما نفوذ خواهد کرد.

از این رو ، اطمینان حاصل کنید که نسخه وردپرس را در معرض دید عموم قرار ندهید. هر چیزی که نشان دهنده نسخه وردپرس است را حذف کنید.

در صورت امکان، همه چیزهایی مانند، Powered by WordPress و غیره را نیز حذف کنید.

برای حذف یک شماره نسخه وردپرس به صورت دستی، باید کد زیر را به فایل functions.php اضافه کنید.

remove_action(\'wp_head\', \'wp_generator\');

پیشوند پیش فرض جداول وردپرس را تغییر دهید

هنگام ایجاد پایگاه داده وردپرس، از شما می خواهد که پیشوند جداول وردپرس را تنظیم کنید. از پیشوند پایگاه داده وردپرس به غیر از \”wp\” استفاده کنید. WP-config-sample.php را باز کنید، قسمت پیشوند را پیدا کنید و آن را به چیزی که می خواهید تغییر دهید. فقط به تصویر بالا نگاه کنید.

غیرفعال کردن ویرایش فایل در داشبورد وردپرس

به‌طور پیش‌فرض، می‌توانید فایل‌های قالب را با رفتن به بخش \”نمایش > ویرایش فایل\” تغییر دهید. وقتی مهاجم به این فایل ها دسترسی پیدا کرد، حدس بزنید چه کارهایی می تواند انجام دهد.

اگر کاربر FTP هستید، می‌توانید ویرایش مستقیم فایل‌های قالب را از داشبورد وردپرس غیرفعال کنید. برای انجام این کار باید رمز عبور FTP را خیلی قوی تنظیم کنید و از آن برای ویرایش مستقیم فایل ها استفاده کنید.

برای غیرفعال کردن ویرایش داشبورد، فایل wp-config.php را باز کنید.

خط زیر را اضافه کنید،

define(\'DISALLOW_FILE_EDIT\', true );

شما به وردپرس می‌گویید که ویرایش فایل را از آن ممنوع کند.

گزارش های امنیتی وردپرس را پیگیری کنید

گزارشی از تمام فعالیت‌های اصلی مانند به‌روزرسانی‌های وردپرس، تغییرات رمز عبور، کاربران، نقش‌ها، ورود به سیستم و غیره را نگهداری و گزارش می دهد.

همچنین گزارشی از آدرس‌ IP ها و مکان هایی که ورود به سیستم انجام شده است را ارائه می دهد.

قابلیت گزارش دهی وردپرس را مخفی کنید

گاهی اوقات ممکن است با خطا یا پیام های هشداری مانند \”Warning in /home/www/… – Line 123\” مواجه شده باشید. این گزارش می تواند بی اهمیت به نظر برسد.

اما تا آنجا که به هک مربوط می شود این یک فاجعه است. زیرا هکرها به طور مداوم به دنبال سایت هایی با آسیب پذیری و مشکلات این چنینی می گردند.

ویژگی خطایابی و هشدارهای PHP را خاموش کنید. wp-config.php را باز کنید.

خطوط زیر را اضافه کنید،

 
 ini_set(\'display_errors\',\'Off\');
define(\'WP_DEBUG_DISPLAY\', false);
ini_set(\'log_errors\',\'On\');
define(\'WP_DEBUG_LOG\', true);
define(\'WP_DEBUG\', false);
 

از سایت خود نسخه پشتیبان تهیه کنید

این ایده خوبی است که به طور منظم از سایت خود نسخه پشتیبان تهیه کنید. در صورت هر گونه هک یا خرابی سرور، نسخه های پشتیبان سایت شما می توانند نقش نجات دهنده ای ایفا کنند.

سخنان پایانی

موارد بیان شده برخی از نکاتی هستند که باید رعایت کنید تا سطح امنیتی سایت وردپرسی شما افزایش یابد.

محدود کردن تلاش برای ورود به سیستم، ورود مبتنی بر IP، احراز هویت  دو مرحله ای مراحلی هستند که باید برای ایمن سازی سایت وردپرسی خود انجام دهید. با استفاده از اسکنرهایی مانند Sucuri، Exploit Scanner، Theme Authenticity Checker و غیره، به طور منظم کل سایت خود را برای بدافزار بررسی کنید.

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

سبد خرید
پیمایش به بالا