Categories: امنیتشبکه

بررسی جامع حملات DOS و DDOS – بخش اول

حملات DoS معمولا از یک یا چند نقطه که از دید سیستم یا شبکه قربانی عامل بیرونی هستند، صورت می گیرند. در بسیاری موارد، نقطه آغاز حمله شامل یک یا چند سیستم است که از طریق سوءاستفاده های امنیتی در اختیار یک نفوذگر قرار گرفته اند و لذا حملات از سیستم یا سیستم های خود نفوذگر صورت نمی گیرد. بنابراین، دفاع برعلیه نفوذ نه تنها به حفاظت از اموال مرتبط با اینترنت کمک می کند، بلکه به جلوگیری از استفاده از این اموال برای حمله به سایر شبکه ها و سیستم ها نیز کمک می کند. پس بدون توجه به اینکه سیستم هایتان به چه میزان محافظت می شوند، قرار گرفتن در معرض بسیاری از انواع حمله و مشخصاً DoS، به وضعیت امنیتی در سایر قسمت های اینترنت بستگی زیادی دارد.

مقابله با حملات DoS تنها یک بحث عملی نیست. محدودکردن میزان تقاضا، فیلترکردن بسته ها و دستکاری پارامترهای نرم افزاری در بعضی موارد می تواند به محدودکردن اثر حملات DoS کمک کند، اما بشرطی که حمله DoS در حال مصرف کردن تمام منابع موجود نباشد. در بسیاری موارد، تنها می توان یک دفاع واکنشی داشت و این در صورتی است که منبع یا منابع حمله مشخص شوند. استفاده از جعل آدرس IP در طول حمله و ظهور روش های حمله توزیع شده و ابزارهای موجود یک چالش همیشگی را در مقابل کسانی که باید به حملات DoS پاسخ دهند، قرار داده است.

تکنولوژی حملات DoS اولیه شامل ابزار ساده ای بود که بسته ها را تولید و از «یک منبع به یک مقصد» ارسال می کرد. با گذشت زمان، ابزارها تا حد اجرای حملات از «یک منبع به چندین هدف»، «از چندین منبع به هدف های تنها» و «چندین منبع به چندین هدف»، پیشرفت کرده اند. با توجه به اهمیت فراگیری این گونه حملات توسط مدیران سایت ها به معرفی انواع اینگونه حملات در آی تی پورت می پردازیم. در بخش دوم به راهکارهای مقابله با اینگونه حملات خواهیم پرداخت.

بررسي انواع حملات DOS

حملات DoS معمولا از یک یا چند نقطه که از دید سیستم یا شبکه قربانی عامل بیرونی هستند، صورت می گیرند. در بسیاری موارد، نقطه آغاز حمله شامل یک یا چند سیستم است که از طریق سوءاستفاده های امنیتی در اختیار یک نفوذگر قرار گرفته اند و لذا حملات از سیستم یا سیستم های خود نفوذگر صورت نمی گیرد. بنابراین، دفاع برعلیه نفوذ نه تنها به حفاظت از اموال مرتبط با اینترنت کمک می کند، بلکه به جلوگیری از استفاده از این اموال برای حمله به سایر شبکه ها و سیستم ها نیز کمک می کند. پس بدون توجه به اینکه سیستم هایتان به چه میزان محافظت می شوند، قرار گرفتن در معرض بسیاری از انواع حمله و مشخصاً DoS، به وضعیت امنیتی در سایر قسمت های اینترنت بستگی زیادی دارد.

حمله SYN flood

اين حمله با ارسال درخواست‌هاي متعدد با علامت SYN به ماشين قرباني باعث پر شدن سف Backlog مي‌شود. اما Backlog چيست؟ تمامي درخواست‌هايي كه به ماشين وارد مي‌شوند و شامل علامت SYN براي برقراري ارتباط مي‌باشند در قسمتي از حافظه به ترتيب ذخيره مي‌شوند تا پس از بررسي جواب آنها داده شده و ارتباط برقرار شود، اين قسمت از حافظه Backlog Queue نام دارد. وقتي كه اين قسمت به علت درخواست‌هاي زياد پر شود، سرويس دهنده مجبور به رها كردن درخواست‌هاي جديد مي‌شود و در نتيجه از رسيدگي به اين درخواست‌ها باز مي ماند.

 

حمله SYN Flood Attack

 

حمله Reset یا RST

پاكت‌هايي كه به علامت RST ارسال مي‌گردند باعث مي‌شوند كه ارتباط مورد نظر قطع گردد. در واقع اگر ماشين A به سمت ماشين B پاكتي را با علامت RST ارسال كند درخواست اتصال مورد نظر از Backlog پاك خواهد شد.

از اين حمله مي توان براي قطع اتصال دو ماشين استفاده كرد. به اين ترتيب كه اتصالي كه بين دو ماشين A و B برقرار است را نفوذگر با ارسال يك در خواست RST به ماشين B از طرف ماشين A قطع مي‌كند. در واقع در داخل پكتي كه از سوي ماشين نفوذگر به سمت قرباني ارسال مي‌شود IP مشتري گذاشته مي‌شود و در اين صورت ماشين B كه سرويس دهنده مي‌باشد ارتباط مورد نظر ماشين A را از Backlog حذف مي‌كند.

در اين روش شخص حمله كننده بوسيله ابزاري مي‌تواند IP جعلي توليد كرده و در واقع درخواست خود را جاي ماشين ديگري ارسال كند. به اين تكنيك Spoofing نيز گفته مي شود.

با كمي دقت در شكل در مي‌يابيد IP مبدا (SourceIP) كه در پكت ارسالي از سوي ماشين حمله كننده به سمت ماشين B مي رود همان IP ماشين شماره A مي باشد. در صورتيكه IPماشين شماره C كه نفوذگر از آن استفاده مي‌كند چيز ديگري است.

 

حمله RST Attack

 

حمله Land Attack

در اين حمله با استفاده از روش Spoofing در پاكت‌هايي كه به سمت سرويس دهنده ارسال مي‌شود به جاي IP و Port مبداء و مقصد IP و Port خود ماشين سرويس دهنده قرار داده مي‌شود.

در واقع IP و PORT ماشين سرويس دهنده به سمت خود سرويس دهنده ارسال مي‌شود. اين عمل باعث مي شود تا در سيستم عامل‌هاي قديمي يك حلقه داخلي Routing به وجود بيايد كه باعث پر شدن حافظه و به وجود آمدن حمله DOS مي شود.

اين حمله در ماشين‌هاي (Win 95 (winsok 1.0 و Cisco IOS ver 10.x و سيستم‌هاي قديمي باعث از كار افتادن سيستم مي‌شد اما امروزه تمامي سيستم هاي هوشمند مانند IDS ها قادر به شناسايي اين حملات مي باشند و اين حمله تاثير زيادي بر روند كاري سرويس دهنده ندارد.

 

حمله Land Attack

 

حمله Smurf Attack

اين حملات با ارسال درخواست‌هاي ICMP به سمت محدوده‌اي از IP هاي amplifier باعث وسعت دادن ترافيك و به وجود آمدن حمله DOS مي شوند.

حمله كننده مي‌تواند درخواست‌هاي ICMP خود را به صورت Spoof شده و از طرف ماشين قرباني به IP هاي amplifier ارسال كند با ارسال هر درخواست صدها جواب براي درخواست ICMP به سمت ماشين قرباني سرازير مي شوند و ترافيك آن را بالا مي برند.

Amplifier : تمام شبكه‌هايي كه درخواست‌هاي ICMP را براي IP broadcast خود فيلتر نكرده‌اند يك Amplifier محسوب مي شوند.

حمله كننده مي‌تواند در خواست‌هاي خود را مثلا به IP هايي مانند: 192.168.0.xxx كه X مي تواند 255, 223, 191, 159, 127, 95, 63, 31, 15, 7, 3 يعني IP هاي Broadcast باشند ارسال كند. البته قابل ذكر است IP broadcast بستگي به چگونگي بخش‌بندي IP در شبكه دارد.

 

حمله Smurf Attack

 

حمله Ping Flood يا Ping of death

در اين نوع حمله با ارسال مستقيم درخواست Ping به کامپيوتر قرباني سعي مي گردد که سرويس ها بلاک و يا فعاليت آن ها کاهش يابد. در اين نوع حمله اندازه بسته هاي اطلاعاتي به حدي زياد (بالاي K64 که در Ping غير مجاز) مي شودکه کامپيوتر قرباني قادر به برخورد مناسب با آميختن بسته هاي اطلاعاتي نيست و مختل مي شود.

 

استاندارد فرمت Ping

 

حمله Ping of death

 

حملات Teardrop

هنگامی كه اطلاعات از یك سیستم به سیستم دیگر منتقل می شود به تكه های كوچكی تقسیم شده و در سیستم مقصد این تكه مجددا به هم متصل شده و كامل می شود. این بسته هر كدام دارای یك فیلد افست هستند كه نشان می دهد بسته حاوی چه قسمتی از اطلاعات است. این فیلد به همراه شماره ترتیب به سیستم مقصد كمك می كند تا بسته ها را مجددا به هم متصل كند. در صورتی كه بسته ها با شماره افست و ترتیب نامربوط ارسال شوند باعث می شود سیستم مقصد از مرتب كردن آنها عاجز شده و در هم بشكند.

 

حملات Teardrop

 

بررسی حملات عدم سرویس دهی توزیع شده D.DoS

حملات DDoS -Distributed Denial of Service حمله گسترده ای از DoS است. در اصل DDos حمله هماهنگ شده ای برعلیه سرویس های موجود در اینترنت است. در این روش حملات DoS بطور غیرمستقیم از طریق تعداد زیادی از کامپیوترهای هک شده بر روی کامپیوتر قربانی انجام می گیرد. سرویس ها و منابع مورد حمله، (قربانی های اولیه) و کامپیوترهای مورد استفاده در این حمله (قربانی های ثانویه) نامیده می شوند. حملات DDoS عموماً در از کار انداختن سایت های کمپانی های عظیم از حملات DoS مؤثرتر هستند.

این نوع حمله طبیعت توزیعی اینترنت را با میزبان هایی که دارای ماهیت جداگانه اطراف دنیا می باشند را به هم وصل می نماید تا جریان یکسوی حجیمی از بسته ھا در برابر یک یا چند قربانی ایجاد نماید. برای اجرای جریان یکسوی DDoS ھکر در ابتدا کنترل تعداد بسیار زیادی از دستگاه ھای قربانی را بدست خواھد گرفت، که زومبی نامیده می شوند.

سیستم ھای زومبی در ھر جای اینترنت واقع شده اند و دارای یک سری آسیب پذیریھای ساده می باشند که ھکر میتونه به سرعت برای بدست آوردن کنترل سیستم استفاده نماید. تا کنون در این نوع حملات، زومبی ھا در سرویس دھندگان آسیب پذیر دانشگاه ھا، سیستم ھای شرکتھای بزرگ، دستگاه ھای سرویس دھنده و حتی سیستم ھای کاربران خانگی که به Loop Digital-Subscriber یا سرویس ھای کابل مدم متصل می باشند نصب می شود. ھکر نوارھای بزرگی از اینترنت را پویش خواھد نمود که به دنبال دستگاه ھای آسیب پذیر استفاده از آنھا و نصب نرم افزار زومبی بر روی سیستم ھای آنھا می باشد. بیشتر دستگاه ھایی که در آن زومبی ھا نصب میشود با استفاده از حمله پر نمودن بیش از حد توده بافر، یا برنامه آسیب رسان مربوطه نصب می شوند. ھکرھا گروه ھایی از صدھا، ھزاران زومبی را ایجاد خواھند کرد.

 

حملات D.DoS

در زیر چند مورد از حملات گسترده عدم سرویس دهی D.DoS معرفی و نحوه عملکرد حملات را توضیح داده ایم.

 

حملات Trinoo

Trinoo در اصل از برنامه های Master/Slave است که با یکدیگر برای یک حمله طغیان UDP بر علیه کامپیوتر قربانی هماهنگ می شوند. در یک روند عادی، مراحل زیر برای برقراری یک شبکه Trinoo DDoS واقع می شوند.

 

حمله Trinoo

مرحله۱: حمله کننده، با استفاده از یک میزبان هک شده، لیستی از سیستم هایی را که می توانند هک شوند، گردآوری می کند. بیشتر این پروسه بصورت خودکار از طریق میزبان هک شده انجام می گیرد. این میزبان اطلاعاتی شامل نحوه یافتن سایر میزبان ها برای هک در خود نگهداری می کند.

مرحله۲: به محض اینکه این لیست آماده شد، اسکریپت ها برای هک کردن و تبدیل آنها به اربابان (Masters) یا شیاطین (Daemons) اجراء می شوند. یک ارباب می تواند چند شیطان را کنترل کند. شیاطین میزبانان هک شده ای هستند که طغیان UDP اصلی را روی ماشین قربانی انجام می دهند.

مرحله۳: حمله DDoS هنگامی که حمله کننده فرمانی به میزبانان Master ارسال می کند، انجام می گیرد. این اربابان به هر شیطانی دستور می دهند که حمله DoS را علیه آدرس IP مشخص شده در فرمان آغاز کنند و با انجام تعداد زیادی حمله DoS یک حمله DDoS شکل می گیرد.

حملات TFN/TFN2K

TFN -Tribal Flood Network یا شبکه طغیان قبیله ای، مانند Trinoo ، در اصل یک حمله Master/Slave است که در آن برای طغیان SYN علیه سیستم قربانی هماهنگی صورت می گیرد. شیاطین TFN قادر به انجام حملات بسیار متنوع تری شامل طغیان ICMP ، طغیان SYN و حملات Smurf هستند، بنابراین TFN از حمله Trinoo پیچیده تر است.

TFN2K نسبت به ابزار TFN اصلی چندین برتری و پیشرفت دارد. حملات TFN2K با استفاده از جعل آدرس های IP اجرا می شوند که باعث کشف مشکل تر منبع حمله می شود. حملات TFN2K فقط طغیان ساده مانند TFN نیستند. آنها همچنین شامل حملاتی می شوند که از شکاف های امنیتی سیستم عامل ها برای بسته های نامعتبر و ناقص سوءاستفاده می کنند تا به این ترتیب باعث از کار افتادن سیستم های قربانی شوند. حمله کنندگان TFN2K دیگر نیازی به اجرای فرمان ها با وارد شدن به ماشین های مخدوم (Client) به جای Master در TFN ندارند و می توانند این فرمان ها را از راه دور اجراء کنند. ارتباط بین Clientها و Daemonها دیگر به پاسخ های اکوی ICMP محدود نمی شود و می تواند روی واسط های مختلفی مانند TCP و UDP صورت گیرد. بنابراین TFN2K خطرناک تر و همچنین برای کشف کردن مشکل تر است.

 

حملات TFN/TFN2K

 

حملات Stacheldraht

کد Stacheldraht بسیار شبیه به Trinoo و TFN است، اما Stacheldraht اجازه می دهد که ارتباط بین حمله کننده و Masterها (که در این حمله Handler نامیده می شوند) رمزنگاری شود؛ عامل ها می توانند کد خود را بصورت خودکار ارتقاء دهند، می توانند اقدام به انواع مختلفی از حملات مانند طغیان های ICMP ، طغیان های UDP و طغیان های SYN کنند.

 

حملات Stacheldraht

امیدوارم از بخش اول آموزش تنهایت استفاده را کرده باشید.

حسین جاهدی

مهندس فناوری اطلاعات IT علاقه مند به مباحث امنیت شبکه ، برنامه نویسی و طراحی وب - مدیر راهبردی و نویسنده آی تی پورت

View Comments

      • ممنونم از مطالب عالی شما

        چقدر خوبه ک ب زبان عامیانه بیان شده،ممممممممنووووونم

        مشکلات زیادی در رابطه با امنیت دارم ممنون میشم اگ بتونم سوالاتمو ازتون بپرسم

  • عالی ممنون

    لطفا از امنیت اطلاعات و امنیت شبکه های کامپیوتری مطالب بیشتری در سایت قرار دهید.

    با تشکر

  • سلام خسته نباشید

    چطوری می تونم حمله dos و ddos بصورت حرفه ای یاد بگیرم؟

  • من همینکه به وبلاگم حمله سایبری نشه باید خدا رو شکر کنم. البته آنقدر متخصصان امنیت هستند که بتونم ازشون در این زمینه کمک بگیرم.

  • سلام

    میشه لطفا منبع مطالب مفیدی را که اینجا بیان کردید هم بذارین یا برای بنده ایمیل کنید.

    بسیار بسیار ممنون میشم .

    ضمنا مطالبتون هم بسیار عالی بود

    متشکرم

Recent Posts

نکات ضروری برای دانلود ایمن؛ چگونه از ورود به دام سایت‌های مخرب جلوگیری کنیم؟

در دنیای بی‌پایان نرم‌افزارها و فایل‌های دیجیتال، امنیت در دانلود و استفاده از آنها یک…

3 سال ago

معرفی و بررسی سری های لپ تاپ ایسوس

شرکت ایسوس یکی از پیشتازان در صنعت فناوری اطلاعات و الکترونیک است که در زمینه…

3 سال ago

آموزش دستورات پاورشل به همراه فهرست کامل کد های ویندوز پاورشل

آیا شما هم به دنبال کار با کد های پاورشل برای هک هستید؟ در این…

3 سال ago

شغل ادمین اینستاگرام چیست و چگونه ادمین اینستاگرام شویم؟

این روزها که همه افراد به دنبال یک شغل پردرآمد می گردند، مشغول به کار…

3 سال ago

آموزش حل مشکل page isn’t available right now در اینستاگرام

خطای page isn’t available right now یکی از آزار دهنده ترین مشکلاتی است که کاربران…

3 سال ago

ویندوز پاورشل چیست ؟ کاربرد ها و نحوه فعال سازی powershell

ویندوز پاورشل چیست؟ پاورشل ابزاری قدرتمند به حساب می آید که همه افراد علاقه مند…

3 سال ago