Apache: Evitar redirecciones indeseadas

A menudo tenemos configurado en nuestros servidores Web Apache, VirtualHosts que usan mod_rewrite para modificar algunas peticiones y dirigirlas a otras URLs. Esto puede ser aprovechado por un atacante para evitar el baneo de la pertenencia a listas negras. Podemos hacer una comprobación sencilla ejecutando telnet NUESTRO_SERVIDOR 80 y luego escribir:

GET http://l25.member.re3.yahoo.com/config/login?login=a-jj&passwd=Monster HTTP/1.0


Si nuestro servidor Web devuelve una respuesta 302, podríamos ser candidatos a ataques mal intencionados. Lo correcto sería que nuestro servidor respondiera con un 403. Para ello, podemos añadir a la configuración de nuestro VirtualHost:
 # Para evitar que nos usen de Salto...
RewriteCond %{HTTP_HOST} !^NOMBREVIRTUALHST
RewriteRule ^(.+) http://NOMBREVIRTUALHST/fallo [F,L]

Donde NOMBREVIRTUALHST es el nombre de nuestro VirtualHost.

La imagen la he sacado del album de rbowen en flickr

No hay comentarios: