Practica 1: vamos a cambiar el TTL de nuestros pings para tratar de hacer creer a la red de destino que somos un SO diferente del que realmente somos. Ello podría ser útil en algún escenario de pentesting.
Utilizamos para ello el programa FragRoute, este programa fragmenta paquetes para tratar de esquivar un IDS. Vamos a configurar su archivo de configuración:
root@kali: # nano /etc/fragroute.conf
Tenemos un SO Linux con un TTL determinado, vamos a cambiarlo por 64 el cual corresponde generalmente a un SO Machintosh (ver correspondencias generales)Añadimos esta linea al archivo de configuración:
ip_ttl 64
Guardamos con Ctrl+O e iniciamos fragroute con una IP de destino, por ejemplo:
root@kali: # fragroute -f /etc/fragroute.conf 192.168.1.37
Ahora podemos usar otra consola para realizar un ping al destino:Fragroute empieza a modificar los paquetes que envia:
Tenemos a la escucha a Tshark con el que comprobamos que efectivamente se ha modificado el TTL (request) en nuestra IP virtual 10.211.55.3:
Si se fallase el ping a posteriori, podemos reiniciar nuestra pila de red con:
root@kali: # /etc/init.d/networking restart
___________
Una de las utilidades de los TTL es poner un TTL corto para que sea descartado después de pasar los tradicionales Firewalls/IDS.
Es una técnica de ataque a un host, el cual reensamblará los paquetes descartando los sobrantes por TTL expirado, esto implica que será el host el único que leerá el código del ataque y no el IDS. Se le conoce como un ataque por fragemntación TCP Chaff con TTL corto.
Existe también evasión de IDS mediante Bad Checksums en la capa TCP y opciones invalidas del paquete que se descartarán en el host destino.
Hoy en día hay IDS-IPS con capacidades avanzadas de análisis para detectar paquetes sospechosos. como por ejemplo McAfee Network Security Platform . Esta plataforma opera en diferentes capas OSI detectando ataques con técnicas de ofuscación combinadas.
Existe un TEST http online que lanza ataques contra nuestro firewall con la finalidad de probar deteciones. (GitHub)
Es recomendable que el adminstrador del sistema se plantee no permitir fragmentación en la red si no es necesaria por tal de atacar de raiz esta vulnerabilidad.