امنیت و امن سازی وردپرس

دسته بندی: آموزش وردپرس به زبان ساده, امنیت
باج افزارهای رمزگذاری کننده چه هستند؟

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

در این مقاله سعی داریم تا روش هایی برای مقابله با هک شدن وردپرس ارائه دهیم.

نسخه هسته وردپرس:

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

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

Directory Indexing :

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

/wp-content/
/wp-content/plugins/
/wp-content/themes/
/uploads/
/images/

بنابراین باید حتما توجه داشته باشیم این ویژگی در تمام مسیر های سایت وردپرس ما از طریق فایل htaccess غیرفعال باشد.

Options -Indexes

محدودیت آپلود فایل های php  :

هکرها معمولا فایل های مخرب و backdoor ها را در مسیرهایی ذخیره میکنند که مدیران کمتر آن مسیرها را بررسی میکنند. باید امکان آپلود فایل های php را در مسیرهای خاصی در وردپرس از طریق فایل htaccess محدود نماییم.  میتوانید از کد زیر استفاده کنید.

<Files *.php>

deny from all

</Files>

مسیرهای حیاتی برای محدودیت آپلود فایل های php

/wp-content/uploads

/wp-includes/

برای محدود کردن سایر فرمت فایل ها در مسیر هایی مانند wp-content  عبارت زیر را به دستور بالا اضافه کنید.

<Files ~ “.(xml|css|jpeg|png|gif|js)$”>

نسخه پلاگین های نصب شده:

ابزارهای زیادی هستند که با بررسی source کدهای HTML یا حتی Header های  HTTP می توانند اطلاعات پلاگین ها را کشف نمایند.

نمونه ای از این ابزارها بصورت زیر است:

WPScan –

Nikto –

بنابراین ممکن است همیشه پنهان کردن اطلاعات کار ساده ای نباشد!

محدود کردن index  کردن فایل های مدیریتی از طریق موتورهای جستجو:

نیازی نیست موتورهای جستجو تمام اطلاعات مهم بخش مدیریت را بررسی کنند. تنها بررسی صفحه اصلی و صفحات داخلی کافی است، بنابراین برای جلوگیری از ورود ربات های خزنده به مسیرهای مدیریت سایت باید فایل robot.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/*

بروز کردن پلاگین های وردپرس :

بصورت مداوم باید پلاگین ها را بروز کرد، همانطور که در گذشته اعلام شد برای بررسی وضعیت پلاگین امنیت پلاگین ها و نیاز به بروز رسانی، پلاگین های امنیتی زیادی وجود دارد.

بروز کردن پلاگین ها امری ضروری و مداوم خواهد بود، برای بروز رسانی خودکار تمام پلاگین های وردپرس، پلاگین وجود دارد اما ترجیه بر این است که از نصب پلاگین های زیاد و غیر ضروری تا جای ممکن خودداری شود، بنابراین نتیجه میگیریم که بروز رسانی بصورت دستی مطمئن تر خواهد بود.

پلاگین بروز رسانی خودکار وردپرس.

https://wordpress.org/plugins/automatic-plugin-updates/

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

add_filter( 'auto_update_plugin', '__return_true' );
 add_filter( 'auto_update_theme', '__return_true' );

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

فایل های مهم سایت خود را امن تر کنید. دسترسی به فایل های پراهمیت وردپرس را بسیار محدود کنید و در حالت read-only قرار دهید. (پرمیژن این فایل ها را بروی 444 تنظیم کنید)

برخی از فایل های مهم:

wp-config.php

.htaccess

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

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

define( ‘DISALLOW_FILE_EDIT’, true );

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

<files wp-config.php>
order allow,deny
deny from all
</files>

کشف نام کاربران و تعداد آن ها :

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

YOURSITE.com/?author=1

با تغییر عدد 1 به اعداد بالاتر تمام نام کاربری اعضای سایت مشخص خواهد شد.

بدست آوردن نام های کاربری (username) به این آسانی راه را برای حملات brute force و بدست آوردن پسورد بسیار راحت میکند.

روش پنهان کردن نام کاربری هم بسیار ساده است، کافی است به phpmyadmin سایت وردپرس خود وارد شوید و در Table مربوط به wp_users نام درج شده در ستون user_nicename  مقابل user مورد نظر را تغییر دهید.

 

wordpress-website-security1.jpg

بصورت پیش فرض user_login و user_nicename باهم یکسان است اما شما باید برای امنیت بیشتر user_nicename را به نام غیرمشابه دیگری تغییر دهید.

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

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

https://wordpress.org/plugins/captcha/

همین طور میتوانید از ویژگی Password Protect بروی پوشه wp-admin  جهت لاگین دو مرحله ای استفاده کنید.

https://goo.gl/TDzYzw

حتما در پایان کار در پنل مدیریت از این صفحه logout  نمایید و بدون خروج از پنل مدیریت کاربری پنجره مرورگر را نبندید!

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

https://wordpress.org/plugins/idle-user-logout/

تغییر Table Prefix دیتابیس:

پیشوند پیش فرض وردپرس برای Table ها  wp_ می باشد. این پیشوند کار را برای حملات Sql Injection  بسیار راحت میکند. بنابراین پیشنهاد ما این است که از یک پیشوند سخت تر مانند mudse248_  استفاده کنید.

امنیت شخصی:

حتما توجه داشته باشید که باید از سیستمی به سایت خود متصل شوید که این سیستم آلوده به ویروس یا تروجان نباشد. برای اطمینان حتما در سیستم کاربری خود از آخرین نسخه های آنتی ویروس های معتبر استفاده کنید. هرگز از سیستم های غیرمطمئن به سایت خود لاگین نشوید. پس از اتمام کار در صفحه مدیریت وردپرس حتما logout کنید. از ذخیره کردن رمزهای کنترل پنل، صفحه مدیریت و FTP بروی مرورگر و نرم افزار ها خودداری کنید.

 

 

برچسب ها:
امتیاز شما

مایلید هر دو هفته یک ایمیل مفید دریافت کنید؟

ما را در شبکه‌های اجتماعی دنبال کنید

همچنین شاید دوست داشته باشید!

نصب وردپرس روی پلسک

نصب وردپرس روی پلسک

0
  زمانی که صحبت از کنترل پنل‌های هاستینگ وب می‌شود، ابزار پلسک (Plesk) یکی از بهترین گزینه‌ها برای کسب‌وکارهای کوچک و بزرگ به حساب می‌آید.…
بلاک کردن آی پی در htaccess

آموزش بلاک کردن آی پی در فایل htaccess

0
بلاک کردن آی پی در فایل htaccess، درِ ورود سایتتان را روی مهمانان پردردسرِ ناخوانده‌ می‌بندد. اگر می‌خواهید کنترل ترافیک ورودی به سایتتان را به…
رفع خطای Dns_probe_finished_nxdomain

رفع خطای Dns_probe_finished _nxdomain

0
خطای Dns_probe_finished_nxdomain حکایت نمایش پرچم تسلیم مرورگرتان بوده که نشان می‌دهد در پیدا کردن آدرس IP (IP چیست؟) وب‌سایت ناکام مانده است. هشداری که مانع…

نظرات کاربران

دیدگاهتان را بنویسید

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

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

فهرست