RangeAmp - سلسلة من هجمات CDN التي تتلاعب برأس Range HTTP

فريق من الباحثين من جامعة بكين وجامعة تسينغهوا وجامعة تكساس في دالاس مكشوف فئة جديدة من هجمات DoS - RangeAmp، تعتمد على استخدام رأس HTTP الفترة (من ... إلى) لتنظيم تضخيم حركة المرور من خلال شبكات توصيل المحتوى (CDN). جوهر هذه الطريقة هو أنه نظرًا للطريقة التي تتم بها معالجة رؤوس النطاق في العديد من شبكات CDN، يمكن للمهاجم طلب بايت واحد من ملف كبير عبر CDN، لكن CDN ستقوم بتنزيل الملف بأكمله أو كتلة أكبر بكثير من البيانات من الشبكة. الخادم الهدف المراد وضعه في ذاكرة التخزين المؤقت. تتراوح درجة تضخيم حركة المرور خلال مثل هذا الهجوم، اعتمادًا على شبكة CDN، من 724 إلى 43330 مرة، والتي يمكن استخدامها لزيادة تحميل شبكة CDN بحركة المرور الواردة أو تقليل سعة قناة الاتصال النهائية إلى موقع الضحية.

RangeAmp - سلسلة من هجمات CDN التي تتلاعب برأس Range HTTP

يمنح رأس النطاق العميل القدرة على تحديد نطاق من المواضع في الملف الذي يجب تنزيله بدلاً من إرجاع الملف بأكمله. على سبيل المثال، يمكن للعميل تحديد "النطاق: بايت = 0-1023" وسيقوم الخادم بإرسال أول 1024 بايت فقط من البيانات. هذه الميزة مطلوبة عند تنزيل الملفات الكبيرة - يمكن للمستخدم إيقاف التنزيل مؤقتًا ثم المتابعة من الموضع المتقطع. عند تحديد "البايت = 0-0"، يرشدك المعيار إلى إعطاء البايت الأول في الملف، "البايت = -1" - الأخير، "البايت = 1-" - بدءًا من بايت واحد حتى نهاية الملف. من الممكن إرسال عدة نطاقات في رأس واحد، على سبيل المثال "Range: bytes=1-0-1023,8192".

بالإضافة إلى ذلك، تم اقتراح خيار هجوم ثانٍ، يهدف إلى زيادة حمل الشبكة عند إعادة توجيه حركة المرور عبر شبكة CDN أخرى، والتي يتم استخدامها كوكيل (على سبيل المثال، عندما يعمل Cloudflare كواجهة أمامية (FCDN)، ويعمل Akamai كواجهة خلفية ( BCDN). تشبه الطريقة الهجوم الأول، ولكنها محلية داخل شبكات CDN وتسمح بزيادة حركة المرور عند الوصول إليها من خلال شبكات CDN أخرى، مما يزيد الحمل على البنية التحتية ويقلل جودة الخدمة.

الفكرة هي أن المهاجم يرسل طلبات نطاق من عدة نطاقات إلى شبكة CDN، مثل "bytes=0-,0-,0-..." أو "bytes=1-,0-,0-..." أو "البايت=-1024,0 ,0-,0-...". تحتوي الطلبات على عدد كبير من النطاقات "0-"، مما يعني إرجاع الملف من الموضع صفر إلى النهاية. بسبب التنفيذ غير الصحيح لتحليل النطاق، عندما يصل CDN الأول إلى الثاني، يتم إرسال ملف كامل لكل نطاق "53-" (لا يتم تجميع النطاقات، ولكن يتم تكرارها بالتسلسل)، إذا كان هناك تكرار وتقاطع للنطاقات في الطلب الذي أرسله المهاجم في البداية. تتراوح درجة تضخيم حركة المرور في مثل هذا الهجوم من 7432 إلى XNUMX مرة.

RangeAmp - سلسلة من هجمات CDN التي تتلاعب برأس Range HTTP

خلال الدراسة، تمت دراسة سلوك 13 CDNs -
Akamai وAlibaba Cloud وAzure وCDN77 وCDNsun وCloudflare وCloudFront وFastly وG-Core Labs وHuawei Cloud وKeyCDN وStackPath وTencent Cloud. سمحت جميع شبكات CDN التي تم فحصها بالنوع الأول من الهجوم على الخادم النهائي. أثر البديل الثاني من هجوم CDN على 6 خدمات، أربع منها يمكن أن تعمل كواجهة أمامية في الهجوم (CDN77 وCDNsun وCloudflare وStackPath) وثلاثة كواجهة خلفية (Akamai وAzure وStackPath). يتم تحقيق أكبر مكاسب في Akamai وStackPath، اللذين يسمحان بتحديد أكثر من 10 آلاف نطاق في رأس النطاق. تم إخطار مالكي CDN بالثغرات الأمنية منذ حوالي 7 أشهر، وبحلول الوقت الذي تم فيه الكشف عن المعلومات علنًا، قامت 12 من أصل 13 شبكة CDN بإصلاح المشكلات المحددة أو أعربت عن استعدادها لإصلاحها (فقط خدمة StackPath لم تستجب).

المصدر: opennet.ru

إضافة تعليق