آشنایی با حمله DDoS
هر سروری که سرویسی را ارایه میدهد، از جهات مختلفی آسیبپذیر است. بسیاری از این آسیبپذیریها تا به امروز شناسایی شده و راهکارهایی برای جلوگیری از آنها به وجود آمده است. اما زمانی تشخیص این آسیبپذیریها بسیار سخت میشود که نتوان حمله را از رفتار عادی کاربر، متمایز کرد. حملهی DDoS یکی از حملاتی است که به سختی شناسایی میشود و همچنین به سختی میتوان از آن جلوگیری کرد.
حملهی DoS چیست؟
فرض کنید که یک سرور، در حال اجرای یک سرویس است و به درخواستهای مختلف کاربران پاسخ میدهد. هر سرور، ظرفیت محدودی برای پاسخگویی به درخواستهای کاربران دارد و اگر به حد اشباع برسد، ممکن است نتواند درخواستها را به موقع یا بهدرستی پاسخ بدهد. یکی از راههای آسیب زدن به یک سرویس، استفاده از همین ظرفیت محدود هر سرور است. اگر یک کاربر، بهشکل مداوم، به یک سرور درخواست بدهد، خواه ناخواه بخشی از ظرفیت سرور را به خود اختصاص داده است و با توجه به محدود بودن ظرفیت، سرویس از دسترس تعدادی از کاربران خارج میشود. یکی دیگر از این روشها، ارسال بستههای درخواست به گونهای است که بیشتر منابع شبکه درگیر شوند. به این نوع حملات، حملهی (DoS (Denial of Service یا منع سرویس گفته میشود. حملهی DoS معمولن از یک ماشین و با IP ثابت انجام میشود، بنابراین گاهی میتوان با بستن IP حمله کننده، جلوی حمله را گرفت.
حملهی DDoS چیست؟
حال فرض کنید مهاجم، برای جلوگیری از دسترسی به سرویس، از روش مشابهی استفاده کند با این تفاوت که به جای استفاده از یک ماشین و یک IP ثابت، از چندین ماشین و IP متفاوت بهره گیرد و در مقایسه با حالت قبل که حمله از یک نقطهی متمرکز انجام میشد، اینبار حمله بهشکل توزیع شده انجام شود. به این نوع حملات، حملات (DDoS (Distributed Denial of Service میگویند. مقابله با این حمله به دو دلیل سختتر است.
اول آنکه چون تعداد درخواستهای هر ماشین حمله کننده، نسبت به حالت قبل بسیار کمتر است، تشخیص ترافیک حمله کننده سختتر است. دوم آنکه، حتا اگر این ترافیک به عنوان حمله تشخیص داده شود، همواره درصدی خطا وجود دارد. اگر سعی شود با بلاک ترافیک جلوی حمله گرفته شود، در صورت اشتباه، سرویس یک کاربر واقعی قطع میشود و این امر، حمله کننده را یک قدم به هدفش نزدیکتر میکند.
چگونه میتوان جلوی حملات DDoS را گرفت؟
با توجه به دلایل گفته شده، تشخیص و جلوگیری از حملهی DDoS بهشکل کامل تقریبن غیرممکن است اما همواره میتوان اقداماتی انجام داد که بتوان ترافیک مهاجم را بهتر تشخیص داد و با این تشخیص، تا بیشترین میزان ممکن جلوی حمله را گرفت.
اولین قدم برای مقابله با این نوع حملات، تشخیص ترافیک مهاجم است. برای این کار، لازم است که الگوی ترافیک عادی تعریف شود تا بر مبنای آن، ترافیک کاربر واقعی از مهاجم تشخیص داده شود. همچنین، روشهایی وجود دارد که به کمک آنها میتوان ترافیک واقعی را از ترافیکی که باتهای حمله کننده تولید میکنند، جدا کرد. قدم بعدی پس از تشخیص، استفاده از فیلترینگ است. باید با فیلتر ترافیک در لایهی شبکه و فایروال، از رسیدن ترافیک به سرور جلوگیری کرد. این اقدامات به میزان خوبی میتواند باعث جلوگیری از حمله شود، اما نمیتواند بهشکل کامل سرویس را در برابر حمله امن کند. بنابراین، همیشه لازم است راهحل جایگزینی، مانند استفاده از proxy server یا انتقال سرویس وجود داشته باشد تا اگر مهاجم توانست از فیلترهای قبلی عبور کند، کمترین آسیب ممکن به سرویس و در نتیجه کاربر برسد.
خطر حملهی DDoS همواره برای هر سرویسی بر بستر اینترنت وجود دارد. اگرچه اقدامات گفته شده میتواند به امنیت سرویس تا حدی کمک کند، اما بسیار توصیه میشود که از راههای مقابله با DDoS بهشکل دستی استفاده نشود. از آنجایی که استفاده از باتها در این حملات بسیار رایج است، در عمل مقابلهی دستی با این حملات ناممکن است.
امروزه بسیاری از ارایه دهندگان سرویسهای ابری، از جمله ابرآروان، راهکارهای جامعی برای مقابله با حملات لایهی شبکه، از جمله DDoS دارند. بدون شک استفاده از سرویس ارایه دهندگان ابری، یکی از راهکارهای مناسب برای ایمنسازی سرویس خود در برابر حملات DDoS است.
محصول DDoS Protection امنیت ابری آروان در چهار سطح مختلف از کسب و کارهای آنلاین در برابر انواع حملات DDoS محافظت میکند.