RangeAmp is 'n reeks CDN-aanvalle wat die Range HTTP-kopskrif manipuleer.

'n Span navorsers van Peking Universiteit, Tsinghua Universiteit en die Universiteit van Texas in Dallas geopenbaar 'n nuwe klas DoS-aanvalle - RangeAmp, gebaseer op die gebruik van 'n HTTP-kopskrif Range om verkeersversterking deur inhoudafleweringsnetwerke (CDN) te organiseer. Die essensie van die metode is dat as gevolg van die manier waarop reeksopskrifte in baie CDN's verwerk word, 'n aanvaller een greep van 'n groot lêer deur die CDN kan versoek, maar die CDN sal die hele lêer of 'n veel groter blok data van die CDN aflaai. teikenbediener wat in die kas geplaas moet word. Die mate van verkeersversterking tydens so 'n aanval, afhangende van die CDN, wissel van 724 tot 43330 keer, wat gebruik kan word om die CDN met inkomende verkeer te oorlaai of die kapasiteit van die finale kommunikasiekanaal na die slagoffer se terrein te verminder.

RangeAmp - 'n reeks CDN-aanvalle wat die Range HTTP-opskrif manipuleer

Die reeksopskrif gee die kliënt die vermoë om 'n reeks posisies in die lêer te spesifiseer wat afgelaai moet word in plaas daarvan om die hele lêer terug te gee. Byvoorbeeld, die kliënt kan "Reeks: grepe=0-1023" spesifiseer en die bediener sal slegs die eerste 1024 grepe data oordra. Hierdie kenmerk is in aanvraag wanneer groot lêers afgelaai word - die gebruiker kan die aflaai onderbreek en dan voortgaan vanaf die onderbroke posisie. Wanneer "grepe=0-0" gespesifiseer word, gee die standaard opdrag om die eerste greep in die lêer te gee, "bytes=-1" - die laaste, "bytes=1-" - vanaf 1 greep tot aan die einde van die lêer. Dit is moontlik om verskeie reekse in een kop te stuur, byvoorbeeld "Bereik: grepe=0-1023,8192-10240".

Daarbenewens is 'n tweede aanvalopsie voorgestel, wat daarop gemik is om die netwerklading te verhoog wanneer verkeer deur 'n ander CDN aangestuur word, wat as 'n instaanbediener gebruik word (byvoorbeeld, wanneer Cloudflare as die frontend (FCDN) optree, en Akamai as die backend optree ( BCDN). Die metode is soortgelyk aan die eerste aanval, maar is gelokaliseer binne CDN-netwerke en maak voorsiening vir verhoogde verkeer wanneer dit deur ander CDN's verkry word, wat die las op die infrastruktuur verhoog en die kwaliteit van diens verminder.

Die idee is dat die aanvaller Range-versoeke van verskeie reekse na die CDN stuur, soos "bytes=0-,0-,0-...", "bytes=1-,0-,0-..." of "grepe=-1024,0 ,0-,0-...". Versoeke bevat 'n groot aantal "0-" reekse, wat impliseer dat die lêer van posisie nul na die einde teruggestuur word. As gevolg van 'n verkeerde implementering van reeksparsering, wanneer die eerste CDN toegang tot die tweede verkry, word 'n volledige lêer gestuur vir elke "53-" reeks (die reekse word nie saamgevoeg nie, maar opeenvolgend herhaal), indien daar duplisering en snyding van reekse in die versoek wat aanvanklik deur die aanvaller gestuur is. Die graad van verkeersversterking in so 'n aanval wissel van 7432 tot XNUMX keer.

RangeAmp - 'n reeks CDN-aanvalle wat die Range HTTP-opskrif manipuleer

Tydens die studie is die gedrag van 13 CDN'e bestudeer -
Akamai, Alibaba Cloud, Azure, CDN77, CDNsun, Cloudflare, CloudFront, Fastly, G-Core Labs, Huawei Cloud, KeyCDN, StackPath en Tencent Cloud. Al die CDN's wat ondersoek is, het die eerste tipe aanval op die eindbediener toegelaat. Die tweede variant van die CDN-aanval het 6 dienste geraak, waarvan vier as 'n frontend in die aanval kon optree (CDN77, CDNsun, Cloudflare en StackPath) en drie as 'n backend (Akamai, Azure en StackPath). Die grootste wins word behaal in Akamai en StackPath, wat toelaat dat meer as 10 duisend reekse in die Range-opskrif gespesifiseer word. CDN-eienaars is ongeveer 7 maande gelede van die kwesbaarhede in kennis gestel, en teen die tyd dat die inligting in die openbaar bekend gemaak is, het 12 uit 13 CDN's die geïdentifiseerde probleme reggestel of uitgespreek dat hulle gereed is om dit reg te stel (slegs die StackPath-diens het nie gereageer nie).

Bron: opennet.ru

Voeg 'n opmerking