Descubrir la presencia de un firewall, y lograr identificarlo, puede ayudarnos a comprender como esta armada la topología de red para poder encontrar sus puntos débiles.
A modo de nota mental, voy a listar algunas técnicas conocidas que podemos utilizar para descubrir firewalls. Estas técnicas pueden estar condicionadas a si el firewall es stateful o packet filter.
Traceroute con TCP. Generalmente la politica del firewall va a filtrar protocolos como ICMP o UDP, utilizados por las implementaciones comunes de traceroute, pero si hacemos un traceroute con TCP (u otros protocolos) muchas veces vamos a poder descubrir la IP del firewall. Mas info en este post.
Fingerprinting del SO. En teoría un firewall no debería tener puertos abiertos o cerrados, todos deberían estar en estado filtrado, por lo que un fingerprinting debería ser difícil de realizar, pero muchas veces funciona.
Puertos Propietarios. Hay firewalls que utilizan algunos puertos específicos para brindar un servicio en particular. Por ejemplo, CheckPoint Firewall-1 utiliza los puertos 259 y 900 para autenticar usuarios que quieren acceder a un recurso.
IKE Scanning. Muchos firewalls, también brindan el servicio de VPN, por lo que si escaneamos por el protocolo IKE vamos a poder descubrir muchos firewalls y servidores de VPN. También podríamos escanear por el puerto 500, pero buscar por IKE funciona muy bien.
Analizar los Paquetes. La mayoría de los firewalls, aparte de descartar una conexión, también tienen la capacidad de terminar una conexión utilizando un RST. En los flags de los headers IP y TCP de estos paquetes, hay grandes diferencias que nos permitirían diferenciar a un firewall de otro.
Generar Respuestas. Otra técnica podría ser enviarle al firewall paquetes malformados para obligarlo a que nos envíe algún tipo de respuesta que delate su presencia. Un buen firewall no debería responder a ningún paquete extraño, pero hay packet filters a los que si por ejemplo les enviamos paquetes con un CRC erróneo van a respondernos (Ed3f).
Ataques Bloqueados. Los firewalls modernos suelen traer alguna capacidad para funcionar como IDS/IPS, analizar que ataques son bloqueados y cuales no, podría también permitirnos identificar que firewall se esta utilizando.
No se me ocurre nada mas en este momento, si me estoy olvidando de algo por favor dejen algún comentario.
1 comentario:
pequeña pero interesante forma de descubrir un firewall. Di con esta pagina al buscar sobre firewalking en redes y me gustó la forma en que lo explicas. Gracias por proporcionar el articulo
Publicar un comentario