مرکز آموزش اولین دیتا

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

0

وردپرس به دلیل محبوبیتی که در بین سیستم‌های سایت ساز دارد همواره در معرض هک و نفوذ قرار دارد در نتیجه یکی از دغدغه‌های مهم ادمین های  سایتهای وردپرسی تامین امنیت وردپرس می باشد  که نمی توان به سادگی از کنار آن عبور کرد. که استفاده از وردپرس در بسیاری از سایت‌ها هم باعث بیشتر و بیشتر شدن موضوع هک سایت وردپرسی شده است. از آنجایی که امنیت یک مبحث  نسبی می باشد و باید تمامی راهکارهای موجود برای افزایش امنیت در وردپرس استفاده کرد چرا که هیچگاه نمی توان گفت یک سیستم امنیت کامل دارد.

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

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

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

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

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

آپدیت مداوم وردپرس

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

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

بک‌آپ گیری منظم وردپرس

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

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

افزایش امنیت فایل wp-config.php

فایل wp-config.php یکی از مهم‌ترین فایل‌های هر سایت وردپرسی است که اطلاعات دیتابیس در این فایل قرار دارد. بنابراین در حفظ اطلاعات این فایل باید دقت کافی را داشته باشید و با استفاده از هر ترفندی که میدانید دسترسی به این فایل را محدود کنید تا کسی جز خود شما قادر به مشاهده این فایل نباشد.

افزایش امنیت فایل htaccess.

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

افزایش امنیت پوشه wp-admin

پوشه wp-admin هم یکی از مهم‌ترین پوشه‌های وردپرس است که همانطور که از اسم این پوشه مشخص می باشد کارهای مربوط به مدیریت پیشخوان وردپرس را به عهده دارد که با دسترسی به این پوشه میشود به راحتی با تزریق کدهایی در فایل‌های موجود در این پوشه به صورت کلی پیشخوان وردپرس را به هم ریخت. برای افزایش امنیت این پوشه میتوانید از کارهایی مثل رمزگذاری روی پوشه wp-admin در هاست سی پنل استفاده کنید.

استفاده از رمز عبور قوی و سطح دسترسی

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

استفاده از رمز عبور صرفا محدود به رمز استفاده شده در وردپرس نیست. بلکه باید برای هر بخش از سایت  مثل ورود به هاست، اکانت FTP، دیتابیس سایت و… هم از رمز قوی استفاده کنید.

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

افزایش امنیت صفحه ورود به وردپرس

صفحه ورود در وردپرس یکی از صفحات مهمی می باشد که نگهداری از آن هم برای جلوگیری از هک سایت و هم برای جلوگیری از حملات DDOS بسیار مهم و کلیدی می باشد. بنابراین با به وجود آمدن روش‌های امنیتی برای مثال  قرار دادن سوال امنیتی، استفاده از ورود دو مرحله‌ای گوگل و… این روش‌ها هم به وردپرس راه باز کردند که استفاده کردن ازآنها می تواند سایت را ایمن کند و در ادامه به معرفی برخی از این راهکارهای افزایش امنیت وردپرس  می‌پردازم.

تغییر آدرس صفحه ورود به وردپرس

وردپرس به صورت پیشفرض از آدرس wp-login.php برای صفحه ورود استفاده میکند که با مراجعه کردن به آدرس wp-admin هم به صورت خودکار به این صفحه هدایت خواهید شد. بنابراین اگر شخصی نام کاربری و رمز شما را بداند به راحتی میتواند وارد پیشخوان وردپرس شده و به صفحه ادمین مسلط باشد. برای همین میتوانید این آدرس و آدرس wp-admin را تغییر داده و از آدرس دلخواه استفاده کنید.

محدودیت در تعداد دفعات ورود به وردپرس

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

محدودیت در ورود با ایمیل در وردپرس

از نسخه ۳ به بعد وردپرس قابلیتی به این سیستم مدیریت محتوا افزود  که علاوه بر نام کاربری بتوانید با ایمیل خود در وردپرس وارد شوید. بنابراین از آنجایی که از ایمیل استفاده شده با بسیاری از افراد در ارتباط هستید پس امکان نفوذ در سایت به ندانستن نام کاربری فراهم خواهد بود. برای غیرفعال کردن این قابلیت وارد هاست خود شده و سپس به مسیر /public_html/wp-content/themes/ مراجعه کنید. حالا وارد پوشه قالبی که ازآن  استفاده می‌کنید شده و قطعه کد زیر را در فایل فانکشن(functions.php) قالب قرار داده و ذخیره کنید.

remove_filter( ‘authenticate’,’wp_authenticate_email_password’, ۲۰ );

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

استفاده از کپچا وردپرس

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

پست های مرتبط

ورود دو مرحله‌ای گوگل در وردپرس

به مدت دو سال می باشد که گوگل برنامه Google Authenticator را برای فراهم کردن قابلیت ورود دو مرحله‌ای فراهم کرده است. در این پروژه دیگر نیازی نیست که حتما کد تایید برای ورود به اکانت را از طریق SMS روی شماره دریافت کنید، بلکه میتوانید برنامه مخصوص اندروید و IOS را روی گوشی خود نصب کرده و کدهایی که به صورت خودکار در این برنامه تولید میشود را برای کد ورود استفاده کنید. این سیستم محدود به محصولات گوگل نیست و با استفاده از این قابلیت میتوانید امکان ورود دو مرحله‌ای گوگل در وردپرس را هم فراهم کنید.

افزودن سوال امنیتی در صفحه ورود وردپرس

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

غیرفعال کردن پیغام خطاهای وردپرس

وقتی نام کاربری یا رمز عبور اشتباهی در صفحه ورود وردپرس وارد کنید پیام “نام کاربری xxx اشتباه است و یا شناسه معتبر نیست” نمایش داده می‌شود. هکر با توجه به پیام نمایش داده شده تشخیص میدهد که کدام یکی از اطلاعات ورود اشتباه هستند و در نهایت پس از یافتن یکی از اطلاعات درست میتواند بر روی مورد بعدی تمرکز کرده و در زمان کوتاه‌تری اقدام به هک سایت کند.

// Remove error message on login screen
add_filter('login_errors', create_function('$a', 'return null;'));

برای غیرفعال کردن این قابلیت کد بالا را در فایل فانکشن(functions.php) قالب خود قرار داده و ذخیره کنید.

مخفی کردن نام کاربری وردپرس

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

# BEGIN block author scans
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (author=d+) [NC]
RewriteRule .* - [F]
# END block author scans

با قرار دادن کد بالا در فایل htaccess. هاست خود میتوانید صفحات مربوط به نویسنده‌ها را در وردپرس به صفحه اصلی ریدایرکت کنید.

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

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

استفاده از SSL در وردپرس

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

غیرفعال کردن مشاهده پوشه‌های هاست

یکی از نکاتی که کاربران کمتر به آن توجه می‌کنند و بر اساس کانفیگ هاست ممکن می باشد این قابلیت در هاست غیرفعال نشده باشد،  مرور پوشه ها در سایت است. Directory browsing میتواند توسط هکرها مورد استفاده قرار گرفته و فایل‌های موجود در هر پوشه به راحتی بررسی شده و با پیدا کردن راه‌های نفوذ به راحتی سایت شما هک شود. این مورد به اینجا محدود نمیشود و افراد میتوانند با پیدا کردن پوشه‌های شما فایل‌های موجود در هاست را هم مورد سرقت قرار دهند. بنابراین لازم می باشد این قابلیت را غیرفعال کنید. برای این منظور کارهای زیر را طی کنید.

  1. وارد هاست خود شده و به مسیر public_html مراجعه کنید.
  2. فایل htaccess. را در ریشه وب سایت خود جستجو کرده و سپس برای ویرایش آن اقدام کنید.
  3. دستور Options -Indexes را در انتهای فایل .htaccess اضافه کنید.
  4. در نهایت فایل را ذخیره کنید.

غیرفعال کردن ویرایشگر قالب و افزونه

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

  1. وارد هاست خود شده و به مسیر public_html مراجعه کنید.
  2. فایل wp-config.php را که در ریشه هاست قرار دارد را انتخاب کرده و به صفحه ویرایش فایل مراجعه کنید.
  3. حالا قطعه کد زیر را در بخش define این فایل قرار داده و ذخیره کنید.
// Disallow file edit
define( 'DISALLOW_FILE_EDIT', true );

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

غیرفعال کردن اجرای فایل PHP در وردپرس

هاست به شما این اجازه میدهد تا هر فایلی را در هر جایی قرار دهید و با دستورات PHP هر کاری در سایت خود انجام دهید. برخی دایرکتوری‌ها نیازی به اجرای فایل‌های PHP در آنها نمی باشد که مهم‌ترین این بخش پوشه uploads وردپرس است که فایل‌های چند رسانه‌ای مثل تصویر، ویدئو، صوت و… در این مسیر قرار می‌گیرد. بنابراین لازم می باشد اجرای دستورات PHP را در این مسیر با استفاده از روش زیر غیرفعال کنید.

  1. وارد هاست خود شده و به مسیر public_html/wp-content/uploads مراجعه کنید.
  2. یک فایل با نام htaccess. بسازید و کدهای زیر را در آن قرار دهید.
<Files *.php>
deny from all
</Files>

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

غیرفعال کردن XML-RPC

فایل XML-RPC وردپرس امکان مدیریت از راه دور را در وردپرس خواهد داد که از جمله این موارد میشود به امکان استفاده از برنامه اندروید، برنامه ویندوز وردپرس یا سرویس‌هایی مثل IFTTT اشاره کرد. با استفاده از تابع system.multicall هکر میتواند همزمان ۲۰ درخواست را به سایت ارسال کرده و اقدام به پیدا کردن رمز ورود در وردپرس کند که علاوه بر این امکان حملات DDOS هم از این طریق فراهم می باشد. پس بهتراست با استفاده از مقاله آموزش غیرفعال کردن XML-rpc اقدام به غیرفعال کردن این قابلیت در وردپرس کنید.

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

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

تغییر دوره‌ای رمز کلیه کاربران در وردپرس

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

استفاده از افزونه امنیتی wordfence

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

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

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد .