CPDoS támadás, amely elérhetetlenné teszi a CDN-n keresztül kiszolgált oldalakat

A Hamburgi és a Kölni Egyetem kutatói
fejlett egy új támadási technika a tartalomszolgáltató hálózatok és a gyorsítótárazó proxy ellen - CPDoS (Cache-mérgezett szolgáltatásmegtagadás). A támadás lehetővé teszi egy oldalhoz való hozzáférés megtagadását gyorsítótár-mérgezés révén.

A probléma abból adódik, hogy a CDN-ek nem csak a sikeresen teljesített kéréseket gyorsítótárazzák, hanem azokat a helyzeteket is, amikor a http-kiszolgáló hibát ad vissza. Általános szabály, hogy ha problémák vannak a kérések kialakításával, a szerver 400-as (Bad Request) hibát ad ki; az egyetlen kivétel az IIS, amely 404-es (Nem található) hibát ad ki túl nagy fejlécek esetén. A szabvány csak a 404-es (nem található), a 405-ös (a módszer nem engedélyezett), a 410-es (eltűnt) és az 501-es (nem implementált) kódú hibák gyorsítótárazását engedélyezi, de egyes CDN-ek a válaszokat 400-as kóddal (Bad Request) is gyorsítótárazza, ami attól függ. az elküldött kérésre.

A támadók előidézhetik, hogy az eredeti erőforrás „400 Bad Request” hibát adjon vissza, ha egy kérést küld bizonyos módon formázott HTTP-fejlécekkel. Ezeket a fejléceket a CDN nem veszi figyelembe, így az oldal elérhetetlenségével kapcsolatos információk gyorsítótárazásra kerülnek, és az időkorlát lejárta előtt minden más érvényes felhasználói kérés hibát eredményezhet, annak ellenére, hogy az eredeti webhely szolgáltatja a tartalmat. minden probléma nélkül.

Három támadási lehetőséget javasoltak arra, hogy a HTTP-kiszolgálót hibaüzenet küldésére kényszerítsék:

  • HMO (HTTP Method Override) – a támadó felülírhatja az eredeti kérési módot az „X-HTTP-Method-Override”, „X-HTTP-Method” vagy „X-Method-Override” fejléceken keresztül, amelyeket egyes szerverek támogatnak, de nem veszik figyelembe a CDN-ben. Például megváltoztathatja az eredeti „GET” metódust a „DELETE” metódusra, amely tiltott a szerveren, vagy a „POST” metódusra, amely nem alkalmazható statikára;

    CPDoS támadás, amely elérhetetlenné teszi a CDN-n keresztül kiszolgált oldalakat

  • HHO (HTTP Header Oversize) – a támadó kiválaszthatja a fejléc méretét úgy, hogy az meghaladja a forráskiszolgáló korlátját, de ne essen a CDN-korlátozások körébe. Például az Apache httpd 8 KB-ra korlátozza a fejléc méretét, az Amazon Cloudfront CDN pedig legfeljebb 20 KB-ot tesz lehetővé;
    CPDoS támadás, amely elérhetetlenné teszi a CDN-n keresztül kiszolgált oldalakat

  • HMC (HTTP metakarakter) – a támadó speciális karaktereket szúrhat be a kérésbe (\n, \r, \a), amelyeket a forráskiszolgálón érvénytelennek tekintenek, de a CDN-ben figyelmen kívül hagynak.

    CPDoS támadás, amely elérhetetlenné teszi a CDN-n keresztül kiszolgált oldalakat

A támadásokra leginkább az Amazon Web Services (AWS) által használt CloudFront CDN volt. Az Amazon most megoldotta a problémát a hiba gyorsítótárának letiltásával, de a kutatóknak több mint három hónapba telt a védelem hozzáadásához. A probléma a Cloudflare, a Varnish, az Akamai, a CDN77 és a
Gyorsan, de a rajtuk keresztül történő támadás az IIS-t, ASP.NET-et, Palack и 1. játék. Megjegyezzük, hogy az Egyesült Államok Védelmi Minisztériumának domainjeinek 11%-a, a HTTP Archívum adatbázisból származó URL-ek 16%-a és az Alexa által rangsorolt ​​30 legnépszerűbb webhely körülbelül 500%-a lehet támadásnak kitéve.

A webhelyoldali támadások blokkolásának megoldásaként használhatja a „Cache-Control: no-store” fejlécet, amely tiltja a válasz gyorsítótárazását. Egyes CDN-ekben, pl.
A CloudFront és az Akamai esetében a profilbeállítások szintjén letilthatja a hibagyorsítótárat. A védelem érdekében használhatunk webalkalmazások tűzfalait is (WAF, Web Application Firewall), de ezeket a CDN oldalon, a gyorsítótárazó gazdagépek előtt kell megvalósítani.

Forrás: opennet.ru

Hozzászólás