در آموزش های قبلی به مباحثی درمورد امنیت وردپرس پرداختیم ، در گام اول شما را باحملاتی مثل حملات کرکینگ آشنانمودیم سپس بحث مجوزها تشریح شد ودرنهایت بحث اکسپلویت را آموزش دادیم ؛
در این مقاله قصد داریم شما کاربران وردپرسی را باحمله ای به نام DDOS وراه های مقابله با این حمله آشنا کنیم.
ابتدا باید بدانیم حملات DDOS چیست؟ این حملات که مخفف کلمه denial of service attack است و معنی آن سرازیر کردن تقاضاهای زیاد به یک سرور (کامپیوتر قربانی یا هدف) و استفاده بیش از حد منابع (پردازنده، پایگاه داده، پهنای باند، حافظه و ..) به طوری که سرویس دهی عادی آن به کاربرانش دچار اختلال شده یا از دسترس خارج شود .
به دلیل حجم بالای پردازش یا به اصطلاح overload شدن عملیات های سرور ، در این حمله ها در یک لحظه یا در طی یک زمان به صورت مداوم از طریق رایانه های مختلف که ممکن است خواسته یا حتی ناخواسته مورد استفاده قرار گرقته باشند ، به یک سرور با آی پی مشخص درخواست دریافت اطلاعات می شود و به دلیل محدود بودن قدرت پردازش سرور به کاربران در وضعیت عادی ، مثل حالاتی که کامپیوتر های رومیزی دچار کندی یا توقف می شوند، دچار وقفه در سرویس دهی یا حتی down شدن آن می شود.
اصولا این حملات با انگیزه های متفاوت توسط یک یا چند نفر و یا حتی گروهی از افراد صورت گیرد، اما آماری که تا به امروز به ثبت رسیده، حکایت از انگیزه های بیشتر فردی یا چند نفره داشته است. به طور مثال ممکن است افرادی برای از سر راه برداستن ناجوانمردانه رقیبان در وب، دست به این نوع اعمال بزنند تا مخاطبین آن سایت یا سرور دچار دلسردی شده و از آن فاصله بگیرند یا برعکس عده ای نفوذگر با نیت خیر خواهانه به سایتی ضد اجتماعی و یا جنگ طلب حمله کنند، لذا گستره افراد و انگیزه ها بسته به نوع مورد متفاوت خواهد بود.
خوشبختانه یکی از موارد مثبت این نوع حملات این است که به سرعت میتوان به نحوه عملکرد سرویس مشکوک شد و جلوی اختلال بیشتر را گرفت، پس از اینکه سروری مورد حمله ddos قرار میگیرد ممکن است با توجه به اهداف و شیوه به کار رفته یک قسمت از منابع یا همه قسمت های آن دچار اختلال شود.در زیر لیستی از این علائم را معرفی میکنیم:
سروری که مورد حمله قرار گرفته باشد، معمولا خیلی کند و با وقفه به درخواست بارگذاری صفحات پاسخ می دهد ، البته این نشانه همیشه دلیل بر حمله ddos نیست، چرا که این اتفاق به طور طبیعی نیز برای سرور ها و سایت های پر بازدید ممکن است رخ دهد یا کنترل این امر بستگی زیادی به قدرت سخت افزاری سرور و تنظیمات آن دارد.
گاهی ممکن است صفحات استاتیک که نیازی به اتصال پایگاه داده ندارند به راحتی بارگذاری شوند ولی اتصال به پایگاه داده برای صفحات داینامیک برقرار نشود، در چنین مواقعی معمولا پیام تکمیل ظرفیت اتصال به پایگاه داده یا too many connection ظاهر خواهد شد، بهترین کار در چنین حالتی این است که با تنظیم دستور هدر HTTP500 به ربات های جستجو گر بگوییم که سایت ما فعلا دچار مشکل است و بعدا مراجعه نمایید.چرا که در غیر این صورت با وجود Down بودن دیتابیس سرور ، ربات ها با دریافت وضعیت HTTP200 صفحه خالی را ایندکس می کنند که این حالت اصلا مناسب نیست. در php این کار را با دستورات هدر می توان انجام داد.
<textarea name=”TextArea1″ id=”TextArea1″ rows=”9″ cols=”37″>
Header(‘HTTP/1.0500 Internal Servar Error’);
header (‘HTTP/1.0500 Internal Server Error’)</textarea
یکی دیگر از نشانه های حملات ddos می تواند مصرف بیش از حد و غیر طبیعی منابع سرور مثل حافظه و یا پهنای باند در یک بازه زمانی کوتاه باشد.
یکی دیگر از نسانه های حملات ddos وجود شمار زیادی درخواست http به سرور است که با مشاهده فایل log و قسمت آمار، می توان به این موضوع پی برد.
گاهی مواقع حملات ddos سرویس های جانبی یک سرور نظیر سرویس ایمیل را هدف می گیرند، در این مواقع ارسال و دریافت ایمیل ممکن است به کندی صورت گیرد یا دچار وقفه شود، البته همانطور که گفتیم هر وقفه و اختلالی به معنی این حملات نیست و تنها به عنوان یک نشانه محسوب می شود.
چند روش به عنوان شایع ترین ها در این نوع حملات استفاده می شود، که در زیر آنها را به طور مختصر توضیح می دهیم:
در این شیوه مهاجم سعی می کند با ارسال درخواست ها( یا بسته های ping ) به سمت کامپیوتر هدف و با تکرار این عمل کل منابع سرور را اشغال کند تا در نهایت آن را به طور کامل از کار بیاندازد. در این شیوه معمولا از کامپیوتر های موجود در یک شبکه یا از سرور هایی به طور همزمان درخواست به سمت سرور قربانی ارسال می شود تا در نهایت موجب از کار افتادن آن شود.
یک Smurf attack نوع خاصی از طوفان درخواست ها به یک سرور است که طی آن به دلیل وجود ضعف در تنظیمات سرویس، اجازه ارسال بسته هایی از اطلاعات به تمام کامپیوتر های موجود در یک شبکه در عوض ارسال آن به کامپیوتر خاص از طریق آدرس Broadcast آن هاست، آدرس Broadcast می تواند به عنوان مثال آی پی اشتراکی سایت های موجود در یک سرور باشد؛ در این حالت اگر تنظیمات سروری به درستی انجام نشده باشد، ارسال یک درخواست به این آی پی موجب تقسیم شدن آن به تمام زیر شاخه ها و در نتیجه overload شدن سرور می شود.
روش اخیر نیز در عمل مشابه با موارد گفته شده است، با این تفاوت که در اینجا مهاجم با ارسال درخواست هایی از نوع بسته های TCP/SYN در پشت چهره ای عادی و تائید شده به عنوان یک کاربر معمولی، از سرور تقاضای اتصال می کند که پس از ارسال پاسخ درخواست، هیچ جوابی به پاسخ سرور داده نمی شود تا اتصال نیمه باز همچنان برقرار باشد (سرور در انتظار پاسخ مهاجم مدتی صبر می کند)، در این بین با افزایش این اتصالات نیمه باز، منابع سرور اشغال شده و نهایتا موجوب بروز اختلال و از کار افتادن آن می شود.
در این روش رشته ای از آی پی های ناقص به هم متصل شده و شبیه به هم را به سرور ارسال می کنند که اگر تنظیمات TCP/IP fragmentation re-assembly سرور دچار نقص در تشخیص آنها باشد، موجب بروز مشکل اضافه بار یا overload در سرور خواهد شد.
یکی از سوال های همیشگی در چنین موقعیت هایی این است که یک حمله ddos چقدر طول می کشد و ظرف چه مدتی به پایان می رسد، پاسخ این سوال نیز می تواند یک جمله باشد : تا زمانی که پایان رسد!
این موضوع بستگی به سماجت مهاجم و ضغف مدافع دارد، یعنی اگر مهاجم بر ادامه حملات خود اصرار داشته باشد و در مقابل مدافع که همان مدیران سرور هستند نتوانند از عهده کنترل اوضاع برآیند، ممکن است حملهddos ساعت ها یا روز ها به طول انجامد، در خوش بینانه ترین حالت ظرف چند دقیقه و در بدترین حالت چندین و چند روز و به دفعات ممکن است طول بکشد.
واقعیت این است که کنترل حمله های ddos پس از وقوع کمی دشوار تر از پیشگیری از آن است. امروزه در سایت ها و انجمن های زیادی به افراد آموزش شیوه های نفوذ و ایجاد حمله های ddos داده می شود که این امر با افزایش شمار کاربران اینترنت( که می توانند میانجی و قربانی بالقوه برای حمله به سرور ها باشند) رو به گسترش است، البته آسیب پذیری در این رابطه، بیشتر به امنیت سرور بر می گردد تا به امنیت سایت شما. در مورد سرور می توان پس از اطمینان از حمله ddos، آی پی هایی را که بیشترین تقاضا را به سرور داشته اند و ناشناس هستند، توسط فایر وال ها بلاک و مسدود کرد یا با نصب بسته های امنیتی خاص و به روز رسانی و ارتقاء سخت افزاری و نرم افزاری، آسیب پذیری سرور را کاهش داد.
آگاهی از روند عادی سرور نیز می تواند کمک بزرگی در این خصوص محسوب شود، چرا که اگر مدیر سرور نسبت عادی یا غیر عادی بودن ترافیک آن، آشنایی داشته باشد، به سرعت می تواند پی به وجود این نوع حمله ها ببرد و در جهت رفع آن برآید.به عنوان یک کاربر در سرویس های میزبانی وب، بهترین کار این است که به محض مشکوک بودن به چنین حمله هایی، موضوع را به هاست خود اطلاع دهید تا در کوتاه ترین زمان جلوی آن گرفته شود.
البته این تنها اقدامات ما نخواهد بود.در وردپرس افزونه ای یه نام cloudflare تعیبیه شده که میتوانید آن را دانلود نمایید.
بعد از وارد شدن به صفحه دانلود افزونه صفحه ای به این شکل مشاهده می کنید که می توانید با زدن دانلود آن را دریافت نمایید.
نکته ای که در اینجا حائز اهمیت است این است که این افزونه به صورت 100% توان مقابله با این حملات را ندارد.اگر شما می خواهید قدرت این افزونه را افزایش دهید بهتر است به آدرس زیر مراجعه کرده و اکانت vip مربوط به افزونه را دریافت کنید که قدرت بیشتری دارد.
در مقاله بعدی باید توضیحاتی در مورد این افزونه و نحوه نصب و پیکربندی آن به شما دوستان عزیز ارائه کنم.