RangeAmp – řada útoků CDN, které manipulují s hlavičkou Range HTTP

Tým výzkumníků z Pekingské univerzity, Tsinghua University a Texaské univerzity v Dallasu odhaleno nová třída DoS útoků - RangeAmp, založená na použití HTTP hlavičky Rozsah organizovat zesílení provozu prostřednictvím sítí pro doručování obsahu (CDN). Podstata metody spočívá v tom, že díky způsobu zpracování hlaviček rozsahu v mnoha sítích CDN si útočník může vyžádat jeden bajt z velkého souboru prostřednictvím sítě CDN, ale CDN stáhne celý soubor nebo mnohem větší blok dat ze sítě CDN. cílový server, který má být umístěn do mezipaměti. Stupeň zesílení provozu během takového útoku se v závislosti na CDN pohybuje od 724 do 43330 XNUMX krát, což lze použít k přetížení CDN příchozím provozem nebo ke snížení kapacity konečného komunikačního kanálu na místo oběti.

RangeAmp – série útoků CDN, které manipulují s hlavičkou Range HTTP

Záhlaví Range dává klientovi možnost zadat rozsah pozic v souboru, které by se měly stáhnout namísto vracení celého souboru. Klient může například zadat "Range: bytes=0-1023" a server přenese pouze prvních 1024 bajtů dat. Tato funkce je žádaná při stahování velkých souborů – uživatel může stahování pozastavit a poté pokračovat z přerušené pozice. Při specifikaci „bytes=0-0“ standard přikazuje zadat první bajt v souboru, „bytes=-1“ - poslední, „bytes=1-“ - počínaje 1 bajtem až do konce souboru. V jedné hlavičce je možné přenášet několik rozsahů, například „Range: bytes=0-1023,8192-10240“.

Kromě toho byla navržena druhá možnost útoku, jejímž cílem je zvýšit zatížení sítě při předávání provozu přes jinou síť CDN, která se používá jako proxy (například když Cloudflare funguje jako frontend (FCDN) a Akamai funguje jako backend ( BCDN). Metoda je podobná prvnímu útoku, ale je lokalizována v rámci sítí CDN a umožňuje zvýšený provoz při přístupu přes jiné sítě CDN, což zvyšuje zatížení infrastruktury a snižuje kvalitu služeb.

Myšlenka je taková, že útočník odešle do CDN požadavky na rozsah několika rozsahů, například "bytes=0-,0-,0-...", "bytes=1-,0-,0-..." nebo "bajty=-1024,0 ,0-,0-...". Požadavky obsahují velký počet rozsahů „0-“, což znamená, že soubor je vrácen od pozice nula do konce. V důsledku nesprávné implementace analýzy rozsahu, když první CDN přistupuje k druhému, je odeslán úplný soubor pro každý rozsah „53-“ (rozsahy nejsou agregovány, ale sekvenčně iterovány), pokud dochází k duplikaci a průniku rozsahů v požadavek původně zaslaný útočníkem. Stupeň zesílení provozu při takovém útoku se pohybuje od 7432 do XNUMXkrát.

RangeAmp – série útoků CDN, které manipulují s hlavičkou Range HTTP

Během studie bylo studováno chování 13 CDN -
Akamai, Alibaba Cloud, Azure, CDN77, CDNsun, Cloudflare, CloudFront, Fastly, G-Core Labs, Huawei Cloud, KeyCDN, StackPath a Tencent Cloud. Všechny zkoumané CDN umožňovaly první typ útoku na koncový server. Druhá varianta útoku CDN zasáhla 6 služeb, z nichž čtyři mohly v útoku fungovat jako frontend (CDN77, CDNsun, Cloudflare a StackPath) a tři jako backend (Akamai, Azure a StackPath). Největšího zisku je dosaženo v Akamai a StackPath, které umožňují specifikovat více než 10 tisíc rozsahů v záhlaví Range. Vlastníci CDN byli o zranitelnosti informováni zhruba před 7 měsíci a v době, kdy byly informace zveřejněny, 12 ze 13 CDN opravilo identifikované problémy nebo vyjádřilo připravenost je opravit (pouze služba StackPath neodpověděla).

Zdroj: opennet.ru

Přidat komentář