Desde la Universidad Técnica de Colonia han revelado un nuevo tipo de ataque web que puede afectar a las redes de entrega de contenido (CDN), ya que podría hacer que mostraran a los visitantes la página de error de nuestro sitio web en lugar del contenido deseado.
Un servicio de CDN nos permite mostrar contenido de nuestro sitio web desde varios servidores de todo el mundo. El CDN accede a nuestro servidor, obtiene el contenido de cada página y lo replica entre sus servidores, para que cuando alguien del otro lado del mundo acceda a nuestra página pueda hacerlo más fácilmente accediendo al servidor CDN que tenga más cercano geográficamente hablando. Es decir, los servidores web almacenan el sitio web original y su contenido, mientras que los CDN almacenan una copia en caché del sitio web que solo se actualiza en ciertos intervalos de tiempo.
Eso significa que las peticiones web que se realizan no se hacen a nuestro servidor y sí a los servidores de cloudflare o de cualquier otro servicio CDN, por lo que la confianza que tenemos que tener hacia ellos debe ser enorme. De hecho, la mayoría de CDNs tiene incluso un sistema para evitar ataques DDoS, todo gracias a la enorme capacidad que tienen.
Pero por lo visto no sin invulnerables. Hay un nuevo ataque llamado CPDoS (denegación de servicio envenenado por caché) que está dirigido a dos componentes de la web moderna: servidores web y redes de entrega de contenido (CDNs).
Comentan en zdnet su funcionamiento:
– Un atacante se conecta a un sitio web hasta que su solicitud genere una nueva entrada de CDN
– La solicitud del atacante contiene un encabezado HTTP malicioso de gran tamaño
– El CDN permite que este encabezado pase al sitio legítimo, por lo que puede procesarse y generar una página web para que el CDN lo almacene en caché
– El encabezado de gran tamaño bloquea el servidor web
– El servidor genera una página de error (un error 400)
– La página de error se almacena en caché en el CDN
– Otros usuarios que acceden al sitio obtienen la página de error en lugar del sitio web real
– El error almacenado en caché se propaga a otros nodos de la red de CDN, creando una interrupción falsa en un sitio legítimo
Según el equipo de investigación, existen tres variantes del ataque CPDoS, dependiendo del tipo de encabezado HTTP que los atacantes decidan usar: Encabezado HTTP de gran tamaño (HHO), HTTP Meta Character (HMC) o Anulación de método HTTP (HMO), tal y como comentan en la nueva web cpdos.org.
La buena noticia es que no todos los servidores web y las redes CDN son vulnerables. En esta tabla es posible ver las combinaciones que sí pueden dar errores.