راههای جلوگیری از حملات Brute Force در وردپرس
مهندس محسن حسن پور

این پست با مسیر متخصص وردپرس مرتبط است. مشاهده مسیر (Roadmap)
امنیت وردپرس یکی از مهمترین موضوعاتی است که هر مدیر و یا صاحب سایت باید به آن توجه ویژهای داشته باشد. بسیاری از حملات سایبری نه از طریق آسیبپذیریهای پیچیده، بلکه به دلیل استفاده از رمزهای عبور ضعیف یا نبود لایههای امنیتی مناسب انجام میشوند. یکی از رایجترین روشهای نفوذ به سایتهای وردپرسی، حملات Brute Force است. در این آموزش با راهکارهایی جهت جلوگیری از حمله Brute Force در وردپرس آشنا خواهیم شد.
حمله Brute Force چیست؟
حمله Brute Force یا «حمله جستجوی فراگیر» روشی است که در آن مهاجم بدون استفاده از آسیبپذیری خاص، تنها با امتحان کردن تعداد زیادی رمز عبور سعی میکند وارد حساب کاربری شود.
به عبارتی دیگر، در این نوع حمله، مهاجم با استفاده از رباتها یا اسکریپتهای خودکار، هزاران یا حتی میلیونها ترکیب مختلف از نام کاربری و رمز عبور را امتحان میکند تا در نهایت به اطلاعات صحیح دست پیدا کند. اگر سایت شما به درستی محافظت نشده باشد، این حملات میتوانند باعث نفوذ به پنل مدیریت، افزایش مصرف منابع سرور و حتی از دسترس خارج شدن سایت شوند.
پاشنه آشیل سایت ها در حملات Brute Force کجا است؟
این حملات معمولاً صفحه ورود وردپرس (wp-login.php) یا بخش ورود مدیریت (wp-admin) را هدف قرار میدهند. اگر رمز عبور ساده باشد یا هیچ محدودیتی برای تعداد دفعات ورود وجود نداشته باشد، احتمال موفقیت این حملات افزایش پیدا میکند. علاوه بر خطر نفوذ، درخواستهای متعدد این رباتها میتواند فشار زیادی به هاست وارد کند و باعث کاهش سرعت سایت شود.
راهکار های عملی جهت جلوگیری از حمله Brute Force
در ادامه با روشهای مؤثر برای جلوگیری از حملات Brute Force در وردپرس آشنا میشویم.
1- استفاده از رمز های عبور قدرتمند
اولین و سادهترین راهکار، انتخاب رمز عبور قدرتمند است. یک رمز عبور قدرتمند زمانی قدرتمند شمرده می شود که:
- حداقل ۱۲ تا ۱۶ کاراکتر داشته باشد.
- شامل حروف بزرگ و کوچک باشد.
- از اعداد استفاده کند.
- دارای نمادهای ویژه مانند @، # یا ! باشد.
- قابل حدس زدن نباشد.
همچنین بهتر است برای هر سایت از رمز عبور متفاوت استفاده کنید و از ذخیره آن در فایلهای متنی خودداری نمایید.
2- عدم استفاده از نام کاربری های پیش فرض
دومین گام و باز هم یکی از ساده ترین کار ها آن است که از اسامی پیش فرض نظیر Admin یا Administrator برای نام کاربری استفاده نکنید. این درحالیست که بسیاری از سایتها همچنان از نام کاربری admin استفاده میکنند. این موضوع کار مهاجمان را بسیار سادهتر میکند، زیرا تنها کافی است رمز عبور را حدس بزنند.
3- محدود کردن تعداد دفعات ورود
یکی از مؤثرترین راهکارها، محدود کردن تعداد تلاشهای ناموفق برای ورود است. به عنوان مثال میتوانید تنظیم کنید که اگر یک کاربر بیش از ۵ بار رمز اشتباه وارد کرد، دسترسی او برای چند دقیقه یا حتی چند ساعت مسدود شود. این کار باعث میشود رباتها نتوانند هزاران رمز عبور را پشت سر هم امتحان کنند و عملاً حمله Brute Force بیاثر شود. افزونه های زیادی برای وردپرس در مخزن وردپرس وجود دارند که این کار را انجام می دهند. یکی از معروف ترین گزینه ها افزونه امنیتی وردفنس است.
4- فعال کردن احراز هویت دومرحلهای (2FA)
احراز هویت دومرحلهای یا Two-Factor Authentication یکی از بهترین روشهای افزایش امنیت ورود به وردپرس است. در این روش، حتی اگر رمز عبور کاربر به دست مهاجم برسد، ورود بدون کد تأیید امکانپذیر نخواهد بود. این کد میتواند از طریق نرمافزارهای تولید رمز یکبار مصرف یا پیامک ارسال شود. فعال کردن 2FA امنیت حساب مدیر سایت را به شکل محسوسی افزایش میدهد.
شما می توانید فرم ثبت نام خود را با افزونه هایی مانند دیجیتس به سیستم ورود از طریق پیامک مجهز کنید یا از طریق افزونه هایی مانند وردفنس 2FA را برای کاربران فعال کنید.
5- استفاده از کپچا در فرم ها
یکی از بهترین روشها برای جلوگیری از حملات Brute Force، استفاده از کپچا است. کپچا قبل از ارسال فرم ورود، بررسی میکند که کاربر یک انسان واقعی است یا یک ربات. در نتیجه اسکریپتهای خودکار دیگر نمیتوانند هزاران بار فرم ورود را ارسال کنند.
سالهاست بسیاری از سایتها از سرویسهای خارجی مانند Google reCAPTCHA استفاده میکنند؛ اما این سرویسها وابسته به API خارجی هستند و ممکن است در برخی شرایط با محدودیت دسترسی، مشکلات اتصال یا کاهش سرعت مواجه شوند.
اگر به دنبال یک راهکار مطمئن، سریع و بدون وابستگی به سرویسهای خارجی هستید، کپچاپرس یکی از بهترین گزینهها برای سایتهای وردپرسی محسوب میشود. ما بصورت اتفاقی در گشت و گذار هایمان در مارکت پلیس های ایرانی با افزونه کپچاپرس مواجه شدیم. پس از بررسی این افزونه می توان ادعا کرد که نسخه ای قابل اتکا و قابل اطمینان از یک کپچا که در هاست یا سرور خودتان اجرا می شود را برای سایتتان به همراه دارد.
در واقع کپچاپرس یک افزونه کاملاً ایرانی است که بدون نیاز به هیچ API خارجی روی هاست یا سرور شما اجرا میشود. تمام پردازشهای امنیتی به صورت محلی انجام میشوند و اطلاعات سایت شما از سرور خارج نخواهد شد. این افزونه علاوه بر امنیت بالا، انواع مختلفی از کپچا را در اختیار شما قرار میدهد؛ از جمله:
- کپچای پازلی
- کپچای انتخاب اشکال هندسی
- کپچای عدد و حروف
- کپچای اسلایدری (کلید و دستگیره)
اگر به دنبال یک راهکار بومی، قابل اتکا و امن برای مقابله با رباتها هستید، کپچاپرس میتواند انتخاب بسیار مناسبی باشد. شما می توانید از اینجا این افزونه را تهیه بفرمایید.
6- تغییر آدرس ورود به سایت
به صورت پیشفرض همه سایتهای وردپرسی از مسیر wp-login.php استفاده میکنند و مهاجمان نیز دقیقاً همین مسیر را هدف قرار میدهند. تغییر آدرس ورود باعث میشود رباتها نتوانند به راحتی صفحه ورود را پیدا کنند. هرچند این روش به تنهایی کافی نیست، اما در کنار سایر راهکارهای امنیتی تأثیر قابل توجهی خواهد داشت.
جمع بندی در خصوص جلوگیری از حمله Brute Force
حملات Brute Force همچنان یکی از رایجترین تهدیدهای امنیتی برای سایتهای وردپرسی هستند، اما خوشبختانه جلوگیری از آنها کار پیچیدهای نیست. استفاده از رمز عبور قوی، محدود کردن تعداد دفعات ورود، فعال کردن احراز هویت دومرحلهای، تغییر آدرس صفحه ورود، استفاده از فایروال و بهروزرسانی منظم وردپرس، همگی نقش مهمی در افزایش امنیت سایت دارند.
با اجرای مجموعهای از این راهکارها، میتوانید احتمال موفقیت حملات Brute Force را تا حد زیادی کاهش دهید و امنیت وبسایت خود را در سطح قابل قبولی حفظ کنید.
