امنیت وردپرس (Wordpress Security) یکی از دغدغههای مدیران سایتها است. در این آموزش میخواهیم انواع روشهایی که میتوان یک سایت وردپرسی را ایمن کرد و تا حدود زیادی از خطرات هکرها در امان نگاه داشت را برایتان بگوییم.
وقتی صحبت از امنیت وردپرس می شود، کارهای زیادی وجود دارد که میتوانید برای سایت خود انجام دهید تا از نفوذ هکرها و آسیب پذیری به سایت فروشگاهی یا وبلاگ خود جلوگیری کنید. آخرین اتفاقی که انتظارش را میکشید این است که یک روز صبح از خواب بیدار شوید و سایت خود را درهم و برهم مشاهده کنید. بنابراین امروز قصد داریم نکات، استراتژیها و تکنیکهای زیادی را به اشتراک بگذاریم که میتوانید برای بهبود امنیت وردپرس خود و محافظت از آنها استفاده کنید.
روزانه بیش از ۱۰۰۰۰۰ سایت در دنیا هم میشوند!
آیا وردپرس سیستم مدیریت محتوای امنی است؟
اولین سوالی که احتمالا از خود میپرسید، این است که آیا وردپرس امن است؟ در اکثر موارد، بله. با این حال، بسیاری مواقع ممکن است بر اثر اشتباهات یا اهمیت ندادن به موقع ما دچار مشکلات امنیتی شود. استفاده از پلاگینهای قدیمی، نال شده، عدم به روز رسانی به موقع و فقدان دانش لازم وب و امنیت در خطر هک قرار بگیرد.
آسیب پذیری امنیتی وردپرس از چه بخشهایی است؟
بخشهای مختلفی وجود دارد که هکرها از آن برای حمله به سایت وردپرسی استفاده میکنند. توجه کنید که در اینجا ما امنیت سرور را به صورت موضوعی جداگانه در نظر میگیریم. اگر از یک سرور ضعیف استفاده کنید، فرقی ندارد سیستم مدیریت محتوای شما چه باشد، در هر حال در خطر هک شدن هستید. بخشهایی که هکرها برای حمله به سایت وردپرسی استفاده میکنند معمولا شامل: دربهای پشتی (ورد به مدیریت)، استفاده از نسخههای قدیمی، حملات Brute-force، تغییر مسیرهای مخرب، اسکریپهای بین سایتی (XSS) و حملات Ddos است.
امنیت ورود به بخش مدیریتی سایت وردپرس
برای امنیت در این بخش راهکارهایی مانند احراز هویت دو مرحلهای، مسدود کردن IP های غیر مجاز، محدود کردن دسترسی مدیریت و جلوگیری از اجرای غیرمجاز فایلهای PHP از روشهایی است که میتوانید امنیت سایت را افزایش داده و از خطرات هکرها در امان باشید. توجه کنید که بخشهای مدیریتی به پایگاه دادههای سایت دسترسی دارند و هک شدن آنها یعنی در دسترس بودن تمام اطلاعات سایت شما برای هکر.
استفاده از نسخههای قدیمی
یکی از بزرگترین اشتباهاتی که بسیاری از مدیران سایتها مرتکب میشوند این است که پس از طراحی سایت، به روزرسانی آن را جدی نمیگیرند. توجه کنید که نگهداری امنیتی از یک سایت فقط یک کار پیشنهادی نیست، بلکه یک ضرورت برای سایت شما است. اگر تخصص کافی ندارید، هیچ اشکالی ندارد! میتوانید از یک متخصص بخواهید کار نگهداری از سایت شما را انجام دهد. اما آن را به حال خود رها نکنید. پس از هک شدن سایت، دیگر برای داشتن یک مدیر امنیتی کمی دیر است.
حملات Brute-force برای ورود در سایت وردپرسی
تلاش برای ورود به سیستم مدیریت محتوا با استفاده از اسکریپتهای خودکار برای سوء استفاده از رمزهای عبور ضعیف و دسترسی به سایت شما یکی از روشهای عمومی در هک سایت وردپرسی است. احراز هویت دو مرحلهای، محدود کردن تلاشهای ورود به سیستم، نظارت بر ورود غیرمجاز، مسدود کردن IP و استفاده از رمزهای عبور قوی، از سادهترین و بسیار مؤثرترین راهها برای جلوگیری از حملات brute-force هستند. اما متأسفانه تعدادی از صاحبان وبسایتهای وردپرس در انجام این روشهای امنیتی توجه کافی را ندارند. در حالی که هکرها به راحتی میتوانند تا ۳۰۰۰۰ وبسایت را در یک روز با استفاده از حملات brute-force به خطر بیاندازند.
تغییر مسیرهای مخرب
تغییر مسیرهای مخرب با استفاده از پروتکلهای FTP، SFTP، wp-admin و سایر پروتکلها، درهای پشتی جدیدی در سایت ایجاد میکنند و کدهای تغییر مسیر را به وبسایت منتقل خواهند کرد. ریدایرکتها اغلب در فایل htaccess. و سایر فایلهای اصلی وردپرس به صورت کدگذاری شده قرار میگیرند و ترافیک سایت شما را به سمت سایتهای مخرب هدایت میکنند.
اسکریپت بین سایتی (XSS)
اسکریپت بین سایتی Cross-Site Scripting (XSS) به این معنی است که یک اسکریپت مخرب به یک وب سایت یا برنامه قابل اعتماد افزوده میشود. هکرها از این روش برای ارسال کدهای مخرب، معمولاً اسکریپتهای سمت مرورگر، برای کاربر سایت استفاده میکند. طبق گفته WordFence، آسیبپذیریهای Cross-Site Scripting رایجترین آسیبپذیری هستند که در افزونههای وردپرس با اختلاف قابل توجهی بروز پیدا میکنند.
غیر فعال کردن سایت وردپرسی
شاید خطرناکترین حملات هکری، آسیبپذیری Denial of Service (DoS) باشد که از خطاها و باگها استفاده میکند تا حافظه سیستمعاملهای وبسایت را تحت فشار قرار دهند. تاکنون هکرها با سوء استفاده از نسخههای قدیمی و باگهای سایت با حملات DoS میلیونها وب سایت را به خطر انداخته و میلیونها دلار به دست آوردهاند.
حتی آخرین نسخههای نرمافزار وردپرس نمیتوانند بهطور جامع در برابر حملات DoS با سطح حمله بالا دفاع کنند، اما حداقل به شما کمک میکنند تا در برابر فرود آتش حملات، تا حدود زیادی سایت را فعال نگاه دارید.
چطور امنیت سایت وردپرسی را افزایش دهیم؟
راهکارهای مختلفی برای امنیت وردپرس وجود دارد. این راهها شامل استفاده از یک سرور قدیتمند و ایمن، استفاده از نسخه جدید PHP، استفاده از نام کاربری و رمز عبور ایمن، استفاده از آخرین نسخه وردپرس، پلاگینها و افزونههای آن، قفل ورود به بخش مدیریت سایت، ورود دو مرحلهای، استفاده از گواهی SSL، مخفی نگاه داشتن نسخه وردپرس، استفاده از پلاگینهای امنیتی، محافظت در برابر حملات DDoS، تنظیمات دسترسی به فایلهای، امنیت پایگاه دادهها (دیتا بیس) و بسیاری موارد دیگر میشود.
در ادامه تلاش داریم تا روشهای مختلف برای افزایش امنیت وردپرس را به شما بگوییم.
روی هاست امن وردپرس سرمایهگذاری کنید
وقتی صحبت از امنیت وردپرس به میان میآید، کارهای بسیار زیادی باید انجام داد، البته ما بهترین توصیهها را در مورد نحوه انجام این کار در ادامه به شما ارائه خواهیم داد. بسیاری از نکاتی امنیت سایت در سطح وب سرور (هاستینگ) به وجود میاید که میزبان وردپرس شما مسئول آن است. به هیچ عنوان به خاطر هزینه کم هاستینگ و سرورهای ضعیف سایت خود را در خطر نیاندازید.
بسیار مهم است که میزبانی را انتخاب کنید که بتوانید برای کسب و کار خود به آن اعتماد کنید. اگر وردپرس را روی VPS اختصاصی خودتان میزبانی میکنید، باید دانش فنی انجام این کارها را داشته باشید. اگر دانش کافی ندارید یک هاستینگ بسیار مطمئن و ایمن تهیه کنید.
برای امنیت سرور، چندین لایه از اقدامات امنیتی در سطح سختافزار و نرمافزار لازم است انجام شود تا اطمینان حاصل کنید که زیرساخت سایت وردپرس شما قادر به دفاع در برابر تهدیدات پیچیده، فیزیکی و مجازی است.
به همین دلیل، سرورهای میزبان وردپرس باید با آخرین سیستم عامل و نرمافزار (امنیتی) بهروز شوند و همچنین به طور کامل از نظر آسیب پذیریها و بدافزارها آزمایش و اسکن شوند.
فایروالهای (Firewall) سطح سرور (Server) و سیستمهای تشخیص نفوذ باید قبل از نصب وردپرس روی سرور وجود داشته باشند تا حتی در مراحل نصب وردپرس و ساخت وب سایت به خوبی از آن محافظت شود. با این حال، هر نرم افزار نصب شده بر روی سرور برای محافظت از محتوای وردپرس باید با آخرین سیستمهای مدیریت پایگاه داده (Database) سازگار باشد تا عملکرد مطلوبی از خود نشان دهد. سرور همچنین باید طوری پیکربندی شود که از شبکه ایمن و پروتکل های رمزگذاری انتقال فایل (مانند SFTP به جای FTP) استفاده کند تا محتوای حساس را از نفوذ هکرها پنهان کند.
برای امنیت سایت از آخرین نسخه PHP استفاده کنید
PHP ستون فقرات سایت وردپرس شما است و بنابراین استفاده از آخرین نسخه در سرور شما بسیار مهم است. هر نسخه اصلی PHP معمولاً تا دو سال پس از انتشار به طور کامل پشتیبانی میشود. در طول این مدت، باگها و مسائل امنیتی برطرف شده و به طور منظم وصله می شوند. در حال حاضر، هر سایتی که بر روی نسخه PHP 7.1 یا پایینتر اجرا میشود، دیگر پشتیبانی امنیتی ندارد و در معرض آسیبپذیریهای امنیتی قرار دارد.
طبق صفحه رسمی آمار وردپرس، بیش از ۵۷ درصد از کاربران وردپرس هنوز از PHP 5.6 یا پایینتر استفاده میکنند. اگر این را با PHP 7.0 ترکیب کنید، ۷۷.۵٪ از کاربران در حال حاضر از نسخههای PHP استفاده میکنند که دیگر پشتیبانی نمی شود. این ترسناک است!
نمیدانید در حال حاضر از کدام نسخه PHP استفاده میکنید؟ یک راه سریع برای بررسی این است که سایت خود را از طریق Pingdom تست کنید. روی اولین درخواست کلیک کنید و به دنبال پارامتر X-Powered-By بگردید. معمولاً در این بخش نسخه PHP را نشان میدهد که سرور وب شما در حال حاضر از آن استفاده میکند. با این حال، برخی از هاستها به دلایل امنیتی این هدر را حذف میکنند. با یک تیکت یا تماس تلفنی با شرکت ارائه دهنده هاست میتوانید از نسخه پیاچپی خود اطمینان حاصل کنید. البته کاربران حرفهای میدانند که روشهای دیگری هم برای این کار وجود دارد.
اگر از Cpanel استفاده میکنید، معمولا دسترسی برای مشاهده و تنظیم نسخه PHP برای شما باز است و میتوانید به سادگی نسخه PHP را ارتقاع دهید.
از نام کاربری (Username) و رمز عبور (Password) هوشمندانه استفاده کنید
به طور شگفت انگیزی یکی از بهترین راهها برای تقویت امنیت وردپرس استفاده از نام کاربری و رمز عبور هوشمندانه است. اگر از رمز عبورهای زیر استفاده میکنید، باید منتظر باشید که نوبت هک شدن سایت شما بسیار زود میرسد!
اگر در مورد انتخاب رمز عبور هوشمند اطلاعات کافی ندارید، خواندن مقاله زیر میتواند به شما کمک کند: پسورد ضعیف و هک شدن سایت
در زمان نصب وردپرس هرگز نباید از نام کاربری پیش فرض «admin» استفاده کنید. یک نام کاربری منحصر به فرد وردپرس برای حساب مدیر ایجاد کنید و در صورت وجود کاربر «admin» را حذف کنید.
همیشه از آخرین نسخه وردپرس، پلاگینها و قالبها استفاده کنید
یکی دیگر از راههای بسیار مهم برای تقویت امنیت وردپرس این است که همیشه آن را بهروز نگه دارید. این بهروزرسانی شامل هسته وردپرس، پلاگینها (پلاگین چیست؟)، و قالبها میشود.
متأسفانه، میلیونها کسبوکار اینترنتی از نسخههای قدیمی هسته و پلاگینهای وردپرس استفاده میکنند و هنوز معتقدند که در مسیر درست موفقیت در کسبوکار خود قرار دارند. آنها دلایل اشتباهی را برای بهروزرسانی نکردن ذکر میکنند، مانند اینکه «سایت آنها خراب میشود» یا «اصلاحات که روی سایت انجام دادهاند از بین میرود» یا «پلاگین X کار نمیکند» یا «آنها فقط به عملکرد جدید نیاز ندارند». در واقع، وبسایتها بیشتر به دلیل اشکالات نسخههای قدیمی وردپرس هک میشوند.
آیا میدانستید که آسیبپذیری پلاگینها عامل ۵۵.۹ درصد از هک سایتهای وردپرسی است؟
توصیه میشود فقط پلاگینهای قابل اعتماد را روی سایت وردپرسی خود نصب کنید. دستههای «ویژه» و «محبوب» در مخزن وردپرس میتوانند مکان خوبی برای شروع انتخاب شما باشند. همچنین میتوانید نسخه آخر پلاگین را مستقیماً از وب سایت توسعه دهنده آن دانلود کنید. از هرگونه استفاده از پلاگین و قالب نال شده دوری کنید. هزینهای که پرداخت نمیکنید را باید چند برابر پس از هک سایت صرف کنید تا شاید سایت شما به حالت قبل بازگردد!
بخش مدیریت وردپرس را قفل کنید!
اگر پیدا کردن لینک مدیریت را برای هکرها سختتر کنید، احتمال کمتری دارد که مورد حمله قرار بگیرید. قفل کردن قسمت مدیریت وردپرس و ورود به سیستم راه خوبی برای افزایش امنیت شما است. دو روش عالی برای انجام این کار، ابتدا با تغییر URL ورود به سیستم wp-admin پیشفرض و سپس محدود کردن تعداد تلاشهای ورود به سیستم میتواند بسیار موثر باشد.
از احراز هویت دو مرحلهای استفاده کنید
نمیتوانیم اهمیت احراز هویت دو مرحلهای را در امنیت وردپرس فراموش کنیم! مهم نیست که رمز عبور شما چقدر امن باشد، همیشه خطر کشف آن وجود دارد. احراز هویت دو مرحلهای شامل یک فرآیند دو مرحلهای است که در آن شما نه تنها برای ورود به رمز عبور بلکه به روش دوم تایید هم نیاز دارید. به طور کلی یک پیامک (SMS)، تماس تلفنی، یا رمز عبور یکبار مصرف مبتنی بر زمان (TOTP) برای احراز هویت دو مرحلهای استفاده میشود. در بیشتر موارد این روش در جلوگیری از حملات brute force به سایت وردپرس شما موثر است. چرا؟ زیرا تقریبا غیرممکن است که هکر هم رمز عبور و هم تلفن همراه شما را داشته باشد.
پلاگینهای مختلفی وجود دارد که احراز هویت دو مرحلهای (Two-Factor Authentication) را برای سایت شما امکانپذیر میکنند.
از SSL و https استفاده کنید!
یکی از نادیده گرفتهشدهترین راهها برای تقویت امنیت وردپرس نصب گواهی SSL و اجرای سایت خود از طریق HTTPS است. https مکانیزمی است که به مرورگر یا برنامه وب شما اجازه میدهد به طور ایمن با یک وب سایت ارتباط برقرار کند. یک تصور اشتباه بزرگ این است که اگر پرداخت انلاین ندارید به SSL نیاز ندارید. بسیاری از هاستها و CDNها به شما SSL رایگان میدهند. پس هیچ بهانهای برای عدم استفاده از این گواهینامه وجود ندارد.
اما استفاده از SSL برای سایت شما چندین مزیت دارد که نمیتوان به سادگی از آنها گذشت. در ادامه چند مورد از مزایای استفاده از SSL را برایتان خواهیم گفت.
امنیت
البته، بزرگترین دلیل برای HTTPS امنیت بیشتر است و بله این به شدت برای سایتهای فروشگاهی توصیه میشود. اما چه وبلاگ، سایت خبری، آژانس و غیره داشته باشید، همه آنها میتوانند از HTTPS بهرهمند شوند، زیرا این کار تضمین میکند که هیچ چیز مثل متن ساده منتقل نمیشود. توجه کنید که رمز عبور و پسورد شما هم به سمت سرور نباید به صورت متن ساده ارسال شود و این با https به دست میآید.
سئو
گوگل رسما اعلام کرده است که HTTPS یک فاکتور رتبه بندی است. در حالی که این تنها یک عامل رتبه بندی کوچک است، اکثر شما احتمالاً از هر مزیتی که میتوانید در برابررقبا داشته باشید استفاده میکنید.
اعتماد و اعتبار
بسیاری از کاربران نگران امنیت اطلاعاتشان در زمان ورود به سایت شما هستند. با استفاده از SSL میتوانید خاطر آنها را به میزان زیادی آسوده کنید.
هشدارهای کروم
از سال ۲۰۱۸ نسخههای جدید گوگل کروم شروع به علامتگذاری همه سایتهای غیر HTTPS بهعنوان «غیر ایمن» کردهاند. پس اگر میخواهید کاربر سایت شما با عباراتی مانند سایت ناایمن روبرو نشود، حواستان به SSL باشد.
فایل wp-config.php وردپرس را ایمن کنید
فایل wp-config.php شما مانند قلب و روح نصب وردپرس شما است. امنیت وردپرس تا حد زیادی به امنیت مهمترین فایل آن یعنی wp-config.php وابسته است. این فایل شامل اطلاعات ورود به پایگاه داده و کلیدهای امنیتی است که رمزگذاری اطلاعات در کوکیها را کنترل می کند. در زیر چند کار وجود دارد که میتوانید برای محافظت بهتر از این فایل مهم انجام دهید.
محل فایل wp-config.php را تغییر دهید
به طور پیش فرض، فایل wp-config.php شما در دایرکتوری اصلی نصب وردپرس شما قرار دارد. اما میتوانید آن را به دایرکتوری دیگری منتقل کنید.
برای انتقال فایل wp-config.php به سادگی همه متنهای این فایل را در فایل دیگری کپی کنید. سپس در فایل wp-config.php خود میتوانید کد زیر را قرار دهید تا به سادگی فایل دیگر خود را در آن قرار دهید.
<?php
include('/home/yourname/wp-config.php');
توجه: مسیر دایرکتوری ممکن است بر اساس میزبان وب و تنظیمات شما متفاوت باشد. البته ممکن است این روش را بسیاری از سرورها پشتیبانیی نکنند.
کلیدهای امنیتی وردپرس را به روز کنید
کلیدهای امنیتی وردپرس مجموعهای از متغیرهای تصادفی هستند که رمزگذاری اطلاعات ذخیره شده در کوکیهای کاربر را بهبود میبخشند.
وقتی وردپرس را نصب می کنید، این کلیدها به صورت تصادفی برای شما تولید میشوند. با این حال، اگر چندین به روزرسانی انجام دادهاید یا سایت را از شخص دیگری خریداری کردهاید، ایجاد کلیدهای جدید وردپرس میتواند راهکار خوبی باشد. توجه کنید که کلید جدید را دلبخواهی تغییر ندهید. وردپرس ابزاری برای تولید این کلیدها دارد و بهتر است فقط از آن کلیدها استفاده کنید.
تغییر مجوز
معمولاً فایلهای موجود در دایرکتوری اصلی یک سایت وردپرس روی ۶۴۴ تنظیم میشوند، به این معنی که فایلها توسط صاحب فایل قابل خواندن و نوشتن هستند و همچنین توسط کاربران در مالک گروه آن فایل قابل خواندن و برای دیگران تنها قابل خواندن هستند. طبق اسناد وردپرس، مجوزهای موجود در فایل wp-config.php باید روی ۴۴۰ یا ۴۰۰ تنظیم شود تا از خواندن آن توسط سایر کاربران روی سرور جلوگیری شود.
XML-RPC را غیرفعال کنید
در سالهای گذشته XML-RPC به یک هدف بزرگ برای حملات brute force تبدیل شده است. یکی از ویژگیهای پنهان XML-RPC این است که میتوانید از متد system.multicall برای اجرای چندین روش در یک درخواست استفاده کنید. این موضوع بسیار مفید است زیرا به برنامه اجازه میدهد چندین دستور را در یک درخواست HTTP ارسال کند. اما اتفاقی که میافتد این است که از آن برای اهداف مخرب استفاده میشود.
چند پلاگین وردپرس مانند Jetpack وجود دارد که به XML-RPC متکی هستند، اما اکثر افراد به این قابلیت نیاز ندارند و غیرفعال کردن دسترسی به آن میتواند مفید باشد.
برای غیر فعال کردن XML-RPC، معمولا پلاگینهای امنیتی بخشی برای این منظور دارند. اگر به کد نویسی آشنایی کافی ندارید، بهتر است از این پلاگینها استفاده کنید.
نسخه وردپرس خود را مخفی کنید
مخفی کردن نسخه وردپرس یک موضوع امنیتی برای سایت است. هرچه دیگران کمتر در مورد پیکربندی سایت وردپرس شما بدانند بهتر است. اگر هکرها ببینند که نسخه وردپرس قدیمی دارید، میتواند نشانه خوش آمدگویی برایشان باشد. به طور پیش فرض، نسخه وردپرس در سربرگ کد منبع سایت شما نمایش داده میشود. باز هم، توصیه میکنیم به سادگی مطمئن شوید که نصب وردپرس شما همیشه به روز است، تا لازم نباشد نگران این موضوع باشید.
راهکارهای مختلفی برای عدم نمایش نسخه وردپرس وجود دارد. سادهترین راه استفاده از پلاگینهای امنیتی است. اما اگر به هر دلیلی پلاگین امنیتی وردپرس شما دارای چنین قابلیتی نباشد، باز راههای دیگری وجود دارد که در ادامه چند مورد را میگوییم.
برای حذف سادگی کد زیر را به فایل functions.php قالب وردپرس خود اضافه کنید.
function wp_version_remove_version() {
return '';
}
add_filter('the_generator', 'wp_version_remove_version');
مکان دیگری که در آن نسخه وردپرس نمایش داده میشود، فایل پیش فرض readme.html است که در همه نسخههای وردپرس موجود است. میتوانید با خیال راحت این فایل را پاک کنید.
البته در نسخههای وردپرس ۵ به بالا، دیگر نسخه سیستم مدیریت محتوای شما در این فایل وجود ندارد و نمیخواهد نگران آن باشید.
جدیدترین هدرهای امنیتی HTTP را اضافه کنید
گام دیگری که میتوانید برای تقویت امنیت وردپرس بردارید، استفاده از هدرهای امنیتی HTTP است. اینها معمولاً در سطح وب سرور پیکربندی میشوند و به مرورگر میگویند که چگونه هنگام مدیریت محتوای سایت شما رفتار کند. تعداد زیادی هدر امنیتی HTTP مختلف وجود دارد، اما در زیر به طور معمول مهمترین آنها وجود دارد.
- Content-Security Policy
- X-XSS-Protection
- Strict-Transport-Security
- X-Frame-Options
- Public-Key-Pins
- X-Content-Type
میتوانید با راهاندازی ابزارهای توسعه کروم و مشاهده هدر در پاسخ اولیه سایت، بررسی کنید که کدام هدرها در حال حاضر در سایت وردپرس شما اجرا میشوند. همچنین ابزارهای مختلفی آنلاینی وجود دارند که میتوانید از آنها برای اسکن هدرهای سایت استفاده کنید.
از افزونههای امنیتی وردپرس استفاده کنید
و البته، ما باید به برخی از افزونه های امنیتی وردپرس اشاره کنیم. توسعه دهندگان و شرکت های بزرگ زیادی وجود دارند که راه حل های عالی برای کمک به محافظت بهتر از سایت وردپرس شما ارائه می دهند. در اینجا چند مورد از آنها وجود دارد.
- Sucuri Security
- iThemes Security
- WordFence Security
- WP fail2ban
- SecuPress
یک ویژگی بسیار مهم که بسیاری از پلاگینهای امنیتی دارند ابزار کنترلی است. این بدان معناست که آنها نصب وردپرس شما را بررسی میکنند و به دنبال تغییراتی در فایلهای اصلی که توسط WordPress.org ارائه شده هستند. هر گونه تغییر یا اصلاح در این فایلها میتواند نشان دهنده هک باشد.
هر کدام از این افزونهها قابلیتها و امکانات فراوانی به شما ارائه میدهند که عملا نمیتوان در یک مقاله به تمامی آنها پرداخت. به همین دلیل در این بخش تنها به ذکر کلی آنها بسنده میکنیم.
افزایش امنیت پایگاه داده وردپرس
چند راه برای بهبود امنیت در پایگاه داده وردپرس شما وجود دارد. اولین مورد استفاده از یک نام پایگاه داده هوشمندانه است. مثلا اگر نام سایت شما ترفندهای والیبال است، به طور پیش فرض پایگاه داده وردپرس شما به احتمال زیاد wp_volleyballtricks نام دارد. با تغییر نام پایگاه داده خود به نام مبهمتر، امنیت پایگاهداده را افزایش میدهیم.
توصیه دوم استفاده از پیشوند جدول به جز WP_ است. وردپرس به طور پیش فرض از wp_ استفاده میکند. تغییر آن به چیزی مثلا مانند 39xw_ میتواند بسیار ایمنتر باشد. هنگامی که وردپرس را نصب میکنید، یک پیشوند جدول میخواهد میتوانید آنجا این کار را انجام دهید. اگر از مرحله نصب گذشتید باز نگران نباشید! بسیاری از افزونههای امنیت وردپرس بخشی برای تنظیم و تغییر نام جدول پایگاه دادهها دارند.
همیشه از ارتباطات امن استفاده کنید
شاید باور نکنید ارتباط ایمن با بخش مدیریت سایت چقدر مهم است! همیشه از سیستمی که مال خودتان هست برای ورود به بخش مدیریت وردپرس استفاده کنید. بهتر است کامپیوتر شما یک رمز عبور داشته باشد و فردی به جز شما از آن استفاده نکند. شما نمیدانید اما ممکن است هکر سایت شما یکی از آشنایانتان باشد!
همچنین مهم است که مطمئن شوید مودم خانگی شما به درستی تنظیم شده است. اگر شخصی شبکه خانگی شما را هک کند، میتواند به انواع اطلاعات، از جمله جایی که اطلاعات مهم شما در مورد سایت(های) وردپرس شما ذخیره میشود، دسترسی پیدا کند. در اینجا چند نکته ساده وجود دارد:
- مدیریت از راه دور (VPN) را فعال نکنید. کاربران معمولی هرگز از این ویژگی استفاده نمیکنند و با خاموش نگه داشتن آن میتوانید شبکه خود را در معرض دنیای خارج قرار ندهند.
- مودمها به طور پیش فرض از IP هایی در محدودهای مانند 192.168.1.1 استفاده میکنند. از محدوده متفاوتی مانند 10.9.8.7 استفاده کنید.
- بالاترین سطح رمزگذاری را در Wifi خود فعال کنید.
- بهتر است که IP برایWifi خود را در لیست سفید قرار دهید تا فقط افرادی که رمز عبور و IP خاصی دارند بتوانند به آن دسترسی داشته باشند.
مجوزهای فایل و سرور سایت وردپرس را بررسی کنید
مجوزهای فایل در نصب و سرور وب شما برای تقویت امنیت وردپرس بسیار مهم است. اگر مجوزها خیلی آزاد باشند، شخصی میتواند به راحتی به سایت شما دسترسی پیدا کند و آنرا ویران کند. از طرف دیگر، اگر مجوزهای شما خیلی سخت باشد، این امر میتواند عملکرد سایت شما را مختل کند. بنابراین مهم است که مجوزهای صحیح تنظیم کنید.
مجوزهای فایل
- خواندن (Read): در صورتی که کاربر حق خواندن فایل را داشته باشد، مجوز خواندن اختصاص داده میشود.
- نوشتن (Write): در صورتی که کاربر حق نوشتن یا تغییر فایل را داشته باشد، مجوزهای نوشتن به آنها اختصاص داده میشود.
- اجرا (Execute): در صورتی که کاربر حق اجرای فایل و/یا اجرای آن را به صورت اسکریپت داشته باشد، مجوزهای اجرا به آنها اختصاص داده میشود.
مجوزهای دایرکتوری
- خواندن (Read): در صورتی که کاربر حق دسترسی به محتویات پوشه/دایرکتوری را داشته باشد، مجوزهای خواندن اختصاص داده می شود.
- نوشتن (Write): در صورتی که کاربر حق اضافه کردن یا حذف فایلهایی را که در داخل پوشه/دایرکتوری قرار دارند را داشته باشد، مجوزهای نوشتن اختصاص داده میشود.
- اجرا (Execute): در صورتی که کاربر حق دسترسی به دایرکتوری و اجرای توابع و دستورات، از جمله توانایی حذف دادههای داخل پوشه/دایرکتوری را داشته باشد، مجوزهای اجرا به آنها اختصاص داده میشود.
افزونههای گوناگونی برای تنظیم مجوزها وجود دارد و همیشه مجبور نیستید از داخل پنل هاستینگ این تنظیمات را انجام دهید.
بهتر است مجوزها به صورت زیر باشد:
- مجوزهمه فایلها باید ۶۴۴ یا ۶۴۰ باشند. استثنا wp-config.php است که باید ۴۴۰ یا ۴۰۰ باشد تا دیگر کاربران روی سرور نتوانند آن را بخوانند.
- همه دایرکتوری ها باید ۷۵۵ یا ۷۵۰ باشند.
- به هیچ دایرکتوری نباید ۷۷۷ داده شود، حتی دایرکتوریهای آپلود.
غیرفعال کردن ویرایش فایل در داشبورد وردپرس
بسیاری از سایتهای وردپرسی دارای چندین کاربر و مدیر هستند که میتواند امنیت وردپرس را پیچیدهتر کند. یک روش بسیار بد این است که به نویسندگان یا مشارکت کنندگان دسترسی «مدیر کل» داده شود، اما متاسفانه، همیشه این اتفاق میافتد. مهم است که به کاربران نقشها و مجوزهای صحیح بدهید تا چیزی را خراب نکنند.
بهتر است امکان ویرایش فایل از طریق داشبورد وردپرس را به صورت کلی غیر فعال کنید تا خطرات کمتری را شاهد باشید. نگران نباشید! افزونهها این قابلیت را به سایت شما اضافه میکنند.
جلوگیری از Hotlinking در وردپرس
مفهوم hotlinking بسیار ساده است. شما یک تصویر را در اینترنت در جایی پیدا میکنید و از URL تصویر مستقیماً در سایت خود استفاده میکنید. این تصویر در وب سایت شما نمایش داده میشود اما از محل سرور دیگری خوانده میشود. این در واقع دزدی است زیرا از پهنای باند سایت لینک شده استفاده میکنید. این ممکن است به نظر مشکل بزرگی نباشد، اما میتواند هزینههای اضافی زیادی برای آن سایت ایجاد کند.
حالا فرض کنید فرد دیگری همین کار را با تصاویر سایت شما بکند. اینجاست که دچار مشکل میشوید. پس بهتر است جلوی آن را بگیرید. اما چطور؟ در ادامه راهکار را برایتان میگوییم.
جلوگیری از Hotlinking در Apache
برای جلوگیری از Hotlinking در Apache، کد زیر را به فایل htaccess. خود اضافه کنید.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://dropbox.com/hotlink-placeholder.jpg [NC,R,L]
خط دوم ارجاع دهنده مجاز را تعریف میکند. سایتی که مجاز است مستقیماً به تصویر پیوند دهد، این باید وب سایت واقعی شما باشد. اگر میخواهید چندین سایت را مجاز کنید، میتوانید این ردیف را کپی کرده و ارجاع دهنده را جایگزین کنید.
جلوگیری از Hotlinking در NGINX
برای جلوگیری از hotlinking در NGINX کافی است کد زیر را به فایل Config اضافه کنید.
location ~ .(gif|png|jpe?g)$ {
valid_referers none blocked ~.google. ~.bing. ~.yahoo yourdomain.com *.yourdomain.com;
if ($invalid_referer) {
return 403;
}
}
اگر از CDN استفاده میکنید، بسیاری از CDNها این امکان را برایتان فراهم میکنند که بدون نوشتن و اضافه کردن کد اینکار را انجام دهید.
همیشه پشتیبان (Backup) بگیرید
پشتیبانگیری تنها چیزی است که همه میدانند به آن نیاز دارند، اما همیشه از آن استفاده نمیکنند. بیشتر توصیههای بالا اقدامات امنیتی هستند که میتوانید برای محافظت بهتر از خود انجام دهید. اما مهم نیست که سایت شما چقدر امن باشد، هرگز ۱۰۰٪ امن نخواهد بود. بنابراین در صورت وقوع بدترین اتفاق، بهتر است نسخه پشتیبان داشته باشید.
بسیاری از سرورها پشتیبانگیری را برایتان انجام میدهند اما به تنهایی کافی نیست. میتوانید به صورت دستی خودتان بکاپ تهیه کنید و خیالتان راحتتر باشد. اگر از Cpanel استفاده میکنید، قابلیت پشتیبانگیری به سادگی در دسترس شما است. پس بکاپ داشتن را به بهانههای مختلف عقب نیاندازید.
حفاظت سایت وردپرسی در برابر DDoS
DDoS نوعی از حملات DOS است که در آن از چندین سیستم برای هدف قرار دادن یک سیستم استفاده میشوند. حملات DDoS چیز جدیدی نیستند – طبق گفته دایره المعارف بریتانیکا، اولین مورد مستند به اوایل سال ۲۰۰۰ برمیگردد. برخلاف سایر روشهای هک، این نوع حملات معمولاً به سایت شما آسیب نمیرسانند، بلکه به سادگی سایت شما را برای چند ساعت یا چند روز از کار میاندازند.
برای محافظت از خودت چهکاری میتوانیم انجام دهیم؟ یکی از بهترین توصیه ها استفاده از سرویسهای امنیتی شخص ثالث معتبر مانند Cloudflare یا Sucuri است.
حفاظت پیشرفته DDoS میتواند برای کاهش حملات DDoS در همه اشکال و اندازهها از جمله حملات پروتکلهای UDP و ICMP و SYN/ACK، تقویت DNS و حملات لایه ۷ مورد استفاده قرار بگیرد.
خدمات امنیت وردپرس
مواردی که در بالا گفته شد تنها بخشی از خطراتی است که سایتهای وردپرسی را تهدید میکنند. برای جلوگیری از مشکلات سایتهای وردپرسی، ما به شما خدمات امنیتی متنوعی برای وردپرس ارائه میدهیم. اگر میخواهید ساختار سایت وردپرسی شما ایمن باشد، از خدمات امنیت وردپرس استفاده کنید. در زیر میتوانید هزینه (قیمت، تعرفه) این خدمات، نحوه سفارش و کلیه اطلاعات در مورد آن را به دست بیاورید. در ضمن فراموشن نکنید ما یک مشاوره رایگان برای استفاده از این خدمات هم داریم که نیاز است برای استفاده از آن وقت قبلی دریافت کنید:
اگر برای سایت شما مشکل امنیتی پیش آمده است، باز نگران نباشید! ما خدمات رفع مشکل امنیتی وردپرس هم به شما ارائه میدهیم. در لینک زیر بیشتر با این خدمات آشنا شوید:
اگر نیاز به بهروزرسانی و نگهداری از سایت وردپرسی دارید، باز هم ما در کنارتان هستیم. در لینک زیر بیشتر با این خدمات آشنا خواهید شد:
همانطور که متوجه شدید، لولسا برای امنیت وردپرس همیشه در کنارتان هست.