CPDoS napad radi nedostupnosti stranica koje se poslužuju putem CDN-a

Istraživači sa sveučilišta u Hamburgu i Kölnu
razvijena nova tehnika napada na mreže za isporuku sadržaja i proxy poslužitelje za predmemoriju - CPDoS (Cache-Poisoned Denial-of-Service). Napad omogućuje zabranu pristupa stranici putem trovanja predmemorije.

Problem je zbog činjenice da CDN-ovi predmemoriraju ne samo uspješno izvršene zahtjeve, već i situacije kada http poslužitelj vrati pogrešku. U pravilu, ako postoje problemi s formiranjem zahtjeva, poslužitelj izdaje pogrešku 400 (Bad Request), jedina iznimka je IIS, koji izdaje pogrešku 404 (Not Found) za prevelika zaglavlja. Standard dopušta samo predmemoriranje pogrešaka s kodovima 404 (Nije pronađeno), 405 (Metoda nije dopuštena), 410 (Nestala) i 501 (Nije implementirano), ali neki CDN-ovi također predmemoriraju odgovore s kodom 400 (Loš zahtjev), što ovisi na poslani zahtjev.

Napadači mogu uzrokovati da originalni resurs vrati pogrešku "400 Bad Request" slanjem zahtjeva s HTTP zaglavljima formatiranim na određeni način. CDN ne uzima u obzir ova zaglavlja, pa će informacije o nemogućnosti pristupa stranici biti pohranjene u predmemoriju, a svi drugi važeći korisnički zahtjevi prije isteka vremena mogu rezultirati pogreškom, unatoč činjenici da originalna stranica poslužuje sadržaj bez ikakvih problema.

Predložene su tri opcije napada kako bi se HTTP poslužitelj prisilio da vrati pogrešku:

  • HMO (HTTP Method Override) - napadač može nadjačati originalnu metodu zahtjeva putem zaglavlja "X-HTTP-Method-Override", "X-HTTP-Method" ili "X-Method-Override", koje podržavaju neki poslužitelji, ali nije uzeto u obzir u CDN . Na primjer, možete promijeniti izvornu metodu “GET” u metodu “DELETE”, koja je zabranjena na poslužitelju, ili metodu “POST”, koja nije primjenjiva za statiku;

    CPDoS napad radi nedostupnosti stranica koje se poslužuju putem CDN-a

  • HHO (HTTP Header Oversize) - napadač može odabrati veličinu zaglavlja tako da premašuje ograničenje izvornog poslužitelja, ali ne spada unutar CDN ograničenja. Na primjer, Apache httpd ograničava veličinu zaglavlja na 8 KB, a Amazon Cloudfront CDN dopušta zaglavlja do 20 KB;
    CPDoS napad radi nedostupnosti stranica koje se poslužuju putem CDN-a

  • HMC (HTTP Meta Character) - napadač može umetnuti posebne znakove u zahtjev (\n, \r, \a), koji se smatraju nevažećim na izvornom poslužitelju, ali se ignoriraju u CDN-u.

    CPDoS napad radi nedostupnosti stranica koje se poslužuju putem CDN-a

Najpodložniji napadu bio je CloudFront CDN koji koristi Amazon Web Services (AWS). Amazon je sada riješio problem onemogućivši predmemoriju pogrešaka, no istraživačima je trebalo više od tri mjeseca da dodaju zaštitu. Problem je također utjecao na Cloudflare, Varnish, Akamai, CDN77 i
Brzo, ali napad preko njih ograničen je na ciljane poslužitelje koji koriste IIS, ASP.NET, Boca и Igrajte 1. Zabilježeno je, da bi 11% domena Ministarstva obrane SAD-a, 16% URL-ova iz baze podataka HTTP arhive i oko 30% od 500 najboljih web-mjesta rangiranih od strane Alexe potencijalno moglo biti predmet napada.

Kao zaobilazno rješenje za blokiranje napada na strani stranice, možete koristiti zaglavlje "Cache-Control: no-store", koje zabranjuje predmemoriranje odgovora. U nekim CDN-ovima, npr.
CloudFront i Akamai, možete onemogućiti predmemoriju pogrešaka na razini postavki profila. Za zaštitu također možete koristiti vatrozid web aplikacije (WAF, Web Application Firewall), ali oni moraju biti implementirani na CDN strani ispred hostova za predmemoriju.

Izvor: opennet.ru

Dodajte komentar