مقدمه
حملات
انکار سرویس یا DoS(Denial of Service) به حملاتی می گویند که هدف اصلی
آنها ممانعت از دسترسی قربانیان به منابع کامپیوتری، شبکه ای و یا اطلاعات
است. در اینگونه حملات معمولاً از دسترسی قربانیان به اطلاعاتی که برای
مقابله با اینگونه حملات مفید است، نیز جلوگیری می شود. در این نوع حملات،
مهاجمان با ایجاد ترافیک بی مورد و بی استفاده، حجم زیادی از منابع سرویس
دهنده و پهنای باند شبکه را مصرف یا به نوعی درگیر رسیدگی به این تقاضاهای
بی مورد می کنند و این تقاضاها تا جایی که دستگاه سرویس دهنده را از کار
بیندازد، ادامه پیدا می کند. یک حمله "انکار سرویس" را از طریق تلاش آشکار
حمله کننده برای جلوگیری از استفاده کاربران قانونی یک سرویس از آن سرویس،
شناسایی می کنند. از جمله این تلاشها می توان به موارد زیر اشاره کرد:
-
انواع طغیانهای شبکه شامل طغیانهای TCP، UDP و ICMP که ترافیک قانونی سایت را مختل می کنند.
-
تلاش در جهت قطع ارتباط دو ماشین و در نتیجه عدم امکان استفاده از سرویس آنها.
-
تلاش در جهت ممانعت از دسترسی فردی خاص به یک سرویس.
-
تلاش برای خرابکاری در ارائه سرویس به سیستم یا شخص خاصی.
علاوه بر موارد فوق، استفاده غیر قانونی از منابع هم می
تواند منجر به انکار سرویس شود. برای مثال یک نفوذگر قادر است با استفاده
از بخش بی نام FTP وب سایت شما یک کپی غیرقانونی از یک نرم افزار تجاری را
بر روی سایت شما قرار دهد که فضای شما را اشغال کرده و ترافیک را مختل کند.
البته باید دقت داشت که علت همه از کارافتادگی های سرویس، مربوط به حملات
انکار سرویس نمی شود و بعضی فعالیت های بدخواهانه نیز منجر به از
کارافتادگی سرویس می شوند. همچنین گاهی اوقات حملات انکار سرویس جزئی از یک
حمله گسترده تر محسوب می شوند.
تبعات حملات انکار سرویس
حملات
انکار سرویس قاعدتاً منجر به از کار افتادن رایانه و یا شبکه شما می شوند
ولی تبعات آنها به همین میزان محدود نمی شود و نباید آنها را دست کم گرفت
چرا که بسته به طبیعت سیستم شبکه و نرم افزارهای شما، ممکن است منجر به از
کار افتادن کل سازمان شوند. بعضی از این حملات می توانند توسط منابع بسیار
محدودی انجام شده و یک سایت بزرگ و مجهز را از کار بیندازند. برای مثال یک
مهاجم با استفاده از یک رایانه خانگی قدیمی و یک مودم با سرعت پایین، قادر
است ماشینها و شبکه هایی با سرعتهای به مراتب بالاتر را از کار بیندازد.
این نوع حملات، گاهی اوقات "حمله غیرمتقارن" یا asymmetric attack نامیده
می شود.
انواع حملات انکار سرویس
حملات
انکار سرویس با هدف قرار دادن سرویسهای گوناگون و در اشکال متنوعی ظاهر می
شوند، اما سه شیوه اصلی حمله وجود دارد که عبارتند از:
-
مصرف کردن منابع نادر، محدود و غیر قابل تجدید
-
از بین بردن یا تغییر دادن اطلاعات مربوط به پیکربندی سیستم
-
خرابی فیزیکی یا تبدیل اجزای شبکه
حال به جزئیات هریک از این سه شیوه می پردازیم.
-
مصرف کردن منابع نادر، محدود و غیر قابل تجدید رایانه ها و شبکه ها به خوب کار کردن برخی از منابع مانند پهنای باند، فضای حافظه، CPU، ساختمان داده ها، دسترسی به دیگر رایانه ها و شبکه ها و همچنین منابع محیطی مانند جریان برق، تهویه هوا یا حتی آب نیاز دارند. در زیر برخی از حملات شایعی که با مصرف منابع در ارتباط است، ذکر شده است:
-
اتصالات شبکه حملات انکار سرویس غالباً بر علیه اتصالات شبکه اجرا می شوند و هدف آنها ممانعت از ارتباط هاست یا شبکه با بخشها یا شبکه های دیگر است. در یک نمونه از اینگونه حملات نفوذگر یک ارتباط را بین ماشین خود و قربانی ایجاد می کند به گونه ای که اتصال نهایی برقرار نشود و ارتباط تکمیل نگردد. در این فاصله ماشین قربانی یکی از ساختمان داده های محدود خود را که برای تکمیل ارتباطات مورد نیاز است به این ارتباط ناقص اختصاص می دهد. در نتیجه ارتباطات قانونی دچار انکار سرویس می شوند زیرا قربانی منتظر تکمیل ارتباطات "نیمه باز" است. توجه داشته باشید که در این حمله نفوذگر نیازی به مصرف پهنای باند شما نداشته و با استفاده از ساختمان داده هایی که برای ایجاد ارتباطات به کار می روند، سیستم شما را از کار می اندازد. به این ترتیب یک نفوذگر با استفاده از یک مودم dial-up قادر است یک شبکه پرسرعت را از کار بیندازد. (یک نمونه خوب از حملات غیر متقارن)
-
استفاده از منابع شما بر علیه شما نفوذگران قادرند با استفاده از روشهای غیر قابل انتظار از منابع شما بر علیه خود شما سوءاستفاده کنند. در یکی از این حملات، نفوذگر بسته های UDP ساختگی را برای متصل ساختن سرویس echo بر روی یک ماشین به سرویس chargen بر روی ماشین دیگر مورد استفاده قرار داد و در نتیجه این دو سرویس همه پهنای باند موجود بین خود را مورد مصرف قرار دادند و همچنین بر روی ارتباطات ماشینهای دیگر بر روی شبکه نیز تأثیر گذاشتند
-
مصرف پهنای باند یک نفوذگر می تواند همه پهنای باند شبکه شما را مورد استفاده قرار دهد. او این کار را از طریق تولید تعداد زیادی بسته که به سمت شبکه شما هدایت شده اند انجام می دهد. این بسته ها از لحاظ مفهومی می توانند هر چیزی باشند ولی معمولاً از بسته های ICMP ECHO برای اینگونه حملات استفاده می شود. از طرفی در حمله مصرف پهنای باند، نفوذگر نیازی به حمله از طریق یک ماشین را ندارد، بلکه می تواند با استفاده از چندین ماشین بر روی شبکه های مختلف تأثیر مشابهی را برای قربانی ایجاد کند.
-
مصرف دیگر منابع علاوه بر پهنای باند، نفوذگران قادر به مصرف منابع دیگری نیز هستند که سیستم شما برای کار کردن به آنها نیازمند است. برای مثال در بسیاری از سیستمها تعداد محدودی ساختمان داده برای نگهداری اطلاعات عملیات وجود دارد و یک نفوذگر با نوشتن یک برنامه ساده که کار خاصی انجام نمی دهد و فقط خود را مرتباً بازنویسی می کند، قادر است این منابع را مشغول نگه دارد. البته امروزه بسیاری از سیستم عاملهای جدید امکان سهمیه بندی یا Quota را برای مقابله با این مشکل فراهم کرده اند. علاوه بر این اگر جدول پردازه ها پر هم نشده باشد، CPU ممکن است توسط تعداد زیاد پردازه ها و زمان مورد نیاز برای سوئیچ کردن بین آنها مشغول باقی بماند. به همین جهت لازم است در مورد امکان سهمیه بندی منابع سیستمی در سیستم عامل خود تحقیقات به عمل آورید. یک نفوذگر ممکن است برای مصرف دیسک سخت از راههای زیر اقدام کند:
-
تولید تعداد بسیار زیادی ایمیل.
-
تولید خطاهای عمدی که باید ثبت شوند.
-
قرار دادن فایلها بر روی مناطق ftp بدون نام و یا فضاهای به اشتراک گذاشته شده.
-
در حالت کلی هر چیزی که اجازه نوشتن داده بر روی دیسک را فراهم کند، در صورتی که حد و مرزی برای میزان داده نوشته شده شده قائل نباشد، می تواند منجر به حملات انکار سرویس شود. بسیاری از سایتها دارای سیستمی هستند که حساب کاربری را بعد از چند تلاش ناموفق برای ورود به سیستم قفل می کند. نفوذگر قادر است با استفاده از این خاصیت، از استفاده کاربران قانونی از حساب کاربریشان ممانعت به عمل آورد. در برخی حالات، حسابهای کاربری پراولویت مانند root یا administrator هدف اینگونه حملات قرار دارند. لذا مطمئن شوید روشی برای دسترسی به سیستم تحت شرایط اضطراری وجود دارد. یک نفوذگر قادر است سیستم شما را با استفاده از ارسال داده های دور از انتظار بر روی شبکه از کار بیاندازد. اگر سیستم شما اغلب بدون دلیل آشکاری از کار می افتد، ممکن است قربانی اینگونه حملات شده باشد. موارد دیگری نیز وجود دارند که ممکن است در مقابل حملات انکار سرویس آسیب پذیر باشند و بهتر است بر آنها نیز نظارت لازم را به عمل آورید. این موارد عبارتند از:-
پرینترها
-
ابزارهای Tape
-
اتصالات شبکه
-
هر منبع محدود دیگری که برای عملیات سازمان شما مهم محسوب می شود.
-
-
از بین بردن یا تغییر دادن اطلاعات مربوط به پیکربندی سیستم رایانه ای که به صورت نادرست پیکربندی شده باشد یا به خوبی کار نمی کند یا کاملاً از کار می افتد. یک نفوذگر قادر است با دستکاری یا از بین بردن اطلاعات پیکربندی، از به کارگیری رایانه یا شبکه شما ممانعت به عمل آورد. برای مثال در صورتی که یک نفوذگر اطلاعات مسیریابی را در روترها تغییر دهد، ممکن است کل شبکه غیرفعال شود، یا اگر نفوذگر بتواند رجیستری را در ویندوز NT دستکاری کند، برخی از عملیات غیرقابل استفاده می شوند.
-
خرابی فیزیکی یا تبدیل اجزای شبکه این نوع از حمله ارتباط مستقیم با امنیت فیزیکی دارد. شما باید از شبکه خود در مقابل هر گونه دسترسی غیر مجاز به رایانه ها، روترها، سیم های شبکه، اجزای اسکلت شبکه، ایستگاه های برق و دستگاه های خنک کننده و هر یک از اجزای مهم دیگر شبکه محافظت به عمل آورید. البته امنیت فیزیکی یکی از ارکان اصلی در مقابله با بسیاری از حملات دیگر علاوه بر انکار سرویس نیز می باشد و بهتر است از متخصصان و مشاوران برای راهنمایی بیشتر در این زمینه کمک گرفته شود.
پیشگیری و پاسخگویی
حملات
انکار سرویس می توانند برای بسیاری از سازمانها منجر به از دست رفتن زمان
ارزشمند و منابع مالی شوند. توصیه می شود سایتها احتمال خرابی سرویس گسترده
را از قبل در نظر گرفته و گامهای مناسب را برای کاهش خطر حملات انکار
سرویس به درستی بردارند. برخی از اقداماتی که بنا بر نیاز هر سایت می توان
از آنها استفاده کرد به شرح زیر است:
-
فیلترهای روتر را در شبکه خود مورد استفاده قرار دهید. این فیلترها احتمال برخی از انواع حملات انکار سرویس را کاهش می دهند و همچنین از سوء استفاده کاربران شبکه در هدایت حملات انکار سرویس ممانعت به عمل می آورند.
-
بسته های محافظتی در مقابل طغیان TCP SYN را نصب کنید تا احتمال اینگونه حملات را کاهش دهند ولی به یاد داشته باشید این بسته ها قادر به محافظت کامل از شبکه شما نیستند.
-
هر سرویس شبکه را که ضروری نیست یا مورد استفاده قرار نمی گیرد غیرفعال کنید. این کار قدرت نفوذگران را در سوء استفاده از این خدمات برای اجرای حملات انکار سرویس محدود می سازد.
-
سیستم Quota را بر روی سیستم عامل خود فعال سازید. برای مثال اگر سیستم عامل شما سهمیه بندی (quota) دیسک سخت را پشتیبانی می کند، آن را برای همه حسابهای کاربری مخصوصاً آنهایی که خدمات شبکه را اجرا می کنند فعال سازید. به علاوه در صورتی که سیستم عامل شما اجازه می دهد سیستمهای فایلی جداگانه ای را برای عملیاتهای مهم و کاربران تعریف و استفاده کنید.
-
کارایی سیستم خود را مورد بازبینی قرار دهید و یک سری حدود اصلی را برای کارهای معمولی تعریف کنید و این حدود را برای تشخیص استفاده های غیر معمول از حافظه، CPU و یا ترافیک شبکه به کار ببرید.
-
مرتباً امنیت فیزیکی شبکه را با توجه به نیازهای فعلی بسنجید. در این سنجش، سرورها، روترها، ترمینالهای بدون مراقبت، نقاط دسترسی شبکه، جعبه سیمها، سیستمهای محیطی مانند تهویه هوا و برق و دیگر اجزای شبکه را مورد وارسی قرار دهید.
-
از Tripwire یا ابزار مشابه دیگری برای تشخیص تغییرات در اطلاعات مربوط به پیکربندی یا تغییرات در دیگر فایلها، استفاده کنید.
-
برای ماشینهای جایگزین یا hot spares سرمایه گذاری کرده و از آنها نگهداری کنید تا در مواقع اضطراری جایگزین ماشینهای از کارافتاده شوند.
-
در مورد پیکربندی شبکه خطاپذیر یا دارای افزونگی تحقیق به عمل آورید.
-
سیاست ها و زمانبندی های منظمی را برای پشتیبان گیری ایجاد و نگهداری کنید، مخصوصاً برای اطلاعات مهم مربوط به پیکربندی.
-
سیاست هایی را در مورد رمز عبور مناسب ایجاد و نگهداری کنید، خصوصاً در مورد حسابهای کاربری با اولویت بالا مانند ریشهUNIX یا مدیر Windows NT (UNIX Root and Windows NT Administrator).
منبع:
www.cert.org