منو سایت

حملات DDoS Memcached

 تاریخ انتشار :
/
  وبلاگ
حملات DDoS Memcached

 

حملات DDoS Memcached

حمله DDoS Memcached نوعی حمله سایبری است که در آن مهاجم سعی می‌کند با ارسال حجم زیادی از درخواست‌ها و افزایش بار سرویس در شبکه قربانی، قربانی را هدف قرار دهد و باعث از دسترس خارج شدن سرویس قربانی شود. مهاجم درخواست‌های جعلی را با استفاده از memcached تحت پروتکل UDP به یک سرور آسیب‌پذیر ارسال می‌کند و احتمالاً منابع خدمات قربانی هدف را با این درخواست‌های جعلی بارگذاری می‌کند. اگرچه زیرساخت اینترنت به شدت مملو از درخواست‌های فریبکارانه ارسال شده است، درخواست‌های جدید نمی‌توانند پردازش شوند و ترافیک عادی نمی‌تواند به منبع اینترنت دسترسی پیدا کند، که منجر به انکار سرویس (DoS) می‌شود. Memcached یک سیستم کش پایگاه داده برای افزایش سرعت وب سایت ها و شبکه ها است.

 

memcached

در تصویر بالا می توانید مراکز داده Cloudflare را در شبکه جهانی و میزان نسبی ترافیک حمله memcached که در طول حمله اخیر دریافت کرده اند را مشاهده کنید.

حمله memcached چگونه کار می کند؟

حملات Memcached مشابه سایر حملات DDoS مانند تقویت NTP و تقویت DNS عمل می کنند. این حمله با ارسال درخواست‌های جعلی به یک سرور آسیب‌پذیر عمل می‌کند، که سپس با حجم بیشتری از داده نسبت به درخواست اصلی پاسخ می‌دهد و حجم ترافیک را چند برابر می‌کند.

یک سناریوی حمله سایبری تقویت‌شده با Memcached، اگر بخواهیم آن را در قالب یک مثال ساده بیان کنیم، می‌توانیم نوجوانی بدخواه را در نظر بگیریم که با یک رستوران تماس می‌گیرد و می‌گوید «من یک شماره از کل منو می‌خواهم، لطفاً با من تماس بگیرید و به من بگویید تمام سفارش من.” وقتی رستوران یک شماره تماس می خواهد، شماره ذکر شده شماره تلفن قربانی است. سپس هدف تماسی از رستوران دریافت می کند که حاوی اطلاعات زیادی است که آنها نخواسته اند.

این روش حمله تقویتی امکان پذیر است زیرا سرورهای memcached این گزینه را دارند که با استفاده از پروتکل UDP کار کنند. UDP یک پروتکل شبکه است که اجازه می دهد تا داده ها بدون دریافت چیزی که به عنوان دست دادن شناخته می شود، ارسال شود، که یک فرآیند شبکه است که در آن هر دو طرف توافق می کنند که با هم ارتباط برقرار کنند. UDP به این دلیل استفاده می شود که میزبان هدف هرگز مشورت نمی کند که آیا مایل به دریافت داده است یا خیر، اجازه می دهد حجم زیادی از داده ها بدون رضایت به هدف ارسال شوند.

حمله Memcached در 4 مرحله انجام می شود:

  • یک مهاجم حجم زیادی از داده ها را در یک سرور memcached افشا می کند.
  • سپس مهاجم یک درخواست HTTP GET با آدرس IP قربانی هدف جعل می کند.
  • یک سرور memcached آسیب پذیر که درخواست را دریافت می کند و سعی می کند با پاسخ دادن مفید باشد، پاسخ بزرگی را به هدف ارسال می کند.
  • سرور مورد نظر یا زیرساخت اطراف آن قادر به پردازش حجم زیادی از داده های ارسال شده توسط سرور memcached نیست و در نتیجه منجر به افزایش بار سرور و انکار سرویس یا DoS برای درخواست های غیر جعلی می شود.

memcached

 

این یک حمله حافظه پنهان 260 گیگابایت بر ثانیه علیه شبکه Cloudflare است که سرعت آن کاهش می یابد.

 

یک حمله memcached چقدر می تواند بزرگ باشد؟

ضریب بزرگنمایی این نوع حمله واقعا خیره کننده است. در عمل تا 51200 برابر فاکتورهای تقویت را دیده ایم! به این معنی که برای یک درخواست 15 بایتی می توان یک پاسخ 750 کیلوبایتی ارسال کرد. این یک عامل تقویت بزرگ و خطر امنیتی برای ویژگی های وب است که نمی توانند وزن این حجم از ترافیک حمله را تحمل کنند. داشتن چنین ضریب تقویت بزرگ همراه با سرورهای آسیب‌پذیر، حافظه پنهان را به یک عنصر اصلی برای مهاجمانی تبدیل می‌کند که به دنبال راه‌اندازی DDoS علیه اهداف مختلف هستند.

 

چگونه از حمله memcached جلوگیری کنیم؟

  1. UDP را غیرفعال کنید:

    برای سرورهای memcached، اگر به آن نیاز ندارید، حتماً پشتیبانی UDP را غیرفعال کنید. به طور پیش‌فرض، memcached پشتیبانی UDP را فعال می‌کند و به طور بالقوه سرور را آسیب‌پذیر می‌کند.

  2. فایروال سرور Memcached:

    با فایروال کردن سرورهای memcached از اینترنت، مدیران سیستم می توانند از UDP برای memcached در صورت نیاز بدون مواجهه استفاده کنند.

  3. جلوگیری از جعل IP:

    در حالی که آدرس های IP را می توان جعل کرد، حملات DDoS می توانند از این آسیب پذیری برای هدایت ترافیک به شبکه قربانی سوء استفاده کنند. جلوگیری از جعل IP یک راه حل بزرگتر است که توسط یک مدیر سیستم خاص قابل پیاده سازی نیست و به ارائه دهندگان ترانزیت نیاز دارد که اجازه ندهند هیچ بسته ای از شبکه خود خارج شود که آدرس IP منبع آن خارج از شبکه است. به عبارت دیگر، شرکت هایی مانند ارائه دهندگان خدمات اینترنتی (ISP) باید ترافیک را به گونه ای فیلتر کنند که بسته های خروجی از شبکه آنها نتوانند وانمود کنند که از شبکه دیگری هستند. اگر همه ارائه دهندگان اصلی حمل و نقل این نوع فیلتر را اجرا کنند، حملات جعلی یک شبه ناپدید می شوند.

  4. نرم افزار باید طوری طراحی شود که پاسخی برابر با درخواست ارسال کند:

    راه دیگر برای حذف حملات تقویتی، حذف ضریب تقویت برای هر درخواست ورودی است. اگر داده های پاسخ ارسال شده در نتیجه درخواست UDP کمتر یا برابر با درخواست اصلی باشد، دیگر تقویت امکان پذیر نیست.

 

پست حملات DDoS Memcached اولین بار در Server.ir | نگرش جهانی، میزبانی ایرانی.