Napad CPDoS, zaradi katerega so strani, ki se strežejo prek CDN, onemogočene

Raziskovalci z univerz v Hamburgu in Kölnu
razviti nova tehnika napadov na omrežja za dostavo vsebine in posredniške strežnike za predpomnjenje - CPDoS (Zavrnitev storitve, zastrupljena s predpomnilnikom). Napad omogoča zavrnitev dostopa do strani z zastrupitvijo predpomnilnika.

Težava je posledica dejstva, da CDN-ji predpomnijo ne samo uspešno zaključene zahteve, ampak tudi situacije, ko http strežnik vrne napako. Če pride do težav pri oblikovanju zahtev, strežnik praviloma izda napako 400 (Bad Request), izjema je le IIS, ki za prevelike glave izda napako 404 (Not Found). Standard dovoljuje samo predpomnjenje napak s kodami 404 (Ni najdeno), 405 (Metoda ni dovoljena), 410 (Izginila) in 501 (Ni implementirano), vendar nekateri CDN-ji predpomnijo tudi odgovore s kodo 400 (Slaba zahteva), kar je odvisno od na poslano zahtevo.

Napadalci lahko povzročijo, da izvirni vir vrne napako »400 Bad Request«, tako da pošljejo zahtevo z glavami HTTP, oblikovanimi na določen način. Teh glav CDN ne upošteva, zato bodo informacije o nezmožnosti dostopa do strani shranjene v predpomnilniku, vse druge veljavne uporabniške zahteve pred iztekom časovne omejitve pa lahko povzročijo napako, kljub dejstvu, da izvirno spletno mesto streže vsebino brez težav.

Predlagane so bile tri možnosti napada, da strežnik HTTP prisili, da vrne napako:

  • HMO (HTTP Method Override) – napadalec lahko preglasi izvirno metodo zahteve prek glav »X-HTTP-Method-Override«, »X-HTTP-Method« ali »X-Method-Override«, ki jih podpirajo nekateri strežniki, vendar ni upoštevan v CDN . Prvotno metodo »GET« lahko na primer spremenite v metodo »DELETE«, ki je na strežniku prepovedana, ali metodo »POST«, ki ni uporabna za statiko;

    Napad CPDoS, zaradi katerega so strani, ki se strežejo prek CDN, onemogočene

  • HHO (HTTP Header Oversize) - napadalec lahko izbere velikost glave tako, da presega omejitev izvornega strežnika, vendar ne spada v omejitve CDN. Na primer, Apache httpd omejuje velikost glave na 8 KB, Amazon Cloudfront CDN pa dovoljuje glave do 20 KB;
    Napad CPDoS, zaradi katerega so strani, ki se strežejo prek CDN, onemogočene

  • HMC (HTTP Meta Character) - napadalec lahko v zahtevo vstavi posebne znake (\n, \r, \a), ki se na izvornem strežniku štejejo za neveljavne, v CDN pa so prezrti.

    Napad CPDoS, zaradi katerega so strani, ki se strežejo prek CDN, onemogočene

Najbolj dovzeten za napad je bil CloudFront CDN, ki ga uporabljajo Amazon Web Services (AWS). Amazon je zdaj odpravil težavo z onemogočanjem predpomnjenja napak, vendar so raziskovalci potrebovali več kot tri mesece, da so dodali zaščito. Težava je vplivala tudi na Cloudflare, Varnish, Akamai, CDN77 in
Hitro, vendar je napad prek njih omejen na ciljne strežnike, ki uporabljajo IIS, ASP.NET, Bučko и Predvajaj 1. Opaženo je, da je lahko 11 % domen Ministrstva za obrambo ZDA, 16 % URL-jev iz podatkovne baze HTTP Archive in približno 30 % od 500 največjih spletnih mest po lestvici Alexa potencialno predmet napada.

Kot rešitev za blokiranje napada na strani spletnega mesta lahko uporabite glavo »Cache-Control: no-store«, ki prepoveduje predpomnjenje odgovorov. V nekaterih CDN, npr.
CloudFront in Akamai, lahko onemogočite predpomnjenje napak na ravni nastavitev profila. Za zaščito lahko uporabite tudi požarne zidove spletnih aplikacij (WAF, Web Application Firewall), vendar morajo biti implementirani na strani CDN pred gostitelji predpomnilnika.

Vir: opennet.ru

Dodaj komentar