Al realizar un reconocimiento digital o una prueba de penetración, es importante tomar las huellas dactilares de una red al comprender qué servidores o dispositivos se encuentran entre su sistema y un objetivo. Por ejemplo, los profesionales de seguridad no pueden ir directamente a atacar un servidor web sin antes tomarse el tiempo para ver si hay un firewall frente a él.
Aquí es donde entra en juego la utilidad traceroute. Puede enviar un paquete desde su sistema a la máquina de destino y enumerar su ruta completa para el viaje hasta allí. Esto revelará por cuántos dispositivos pasan los datos de su red, así como la dirección IP de cada dispositivo.
Kali Linux tiene otra utilidad de reconocimiento similar llamada mtr, que en su mayoría funciona igual que traceroute. En esta guía, veremos cómo usar traceroute y mtr, junto con sus diversas opciones de comando, en Kali.
Requisitos de software y convenciones de la línea de comandos de Linux Categoría | Requisitos, convenciones o versión de software utilizada |
Sistema | Kali Linux |
Software | trazar ruta, mtr |
Otro | Acceso privilegiado a su sistema Linux como root o a través de sudo comando. |
Convenciones | # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios |
Cómo utilizar la ruta de seguimiento
Si traceroute aún no está instalado en su sistema, abra un terminal de línea de comandos y escriba los siguientes comandos para instalarlo.
$ sudo apt update
$ sudo apt install traceroute
Una vez que esté instalado, intente ejecutar un traceroute a algún otro sistema. Puede ser un dispositivo en su red, un servidor web o cualquier cosa a la que pueda conectarse, ya sea de forma local o remota. Especifique el nombre de host, el nombre de dominio o la dirección IP en su comando. Tenga en cuenta que algunos comandos de traceroute requieren privilegios de root.
$ traceroute linuxconfig.org
traceroute to linuxconfig.org (104.26.2.13), 30 hops max, 60 byte packets
1 10.0.2.2 (10.0.2.2) 0.186 ms 0.122 ms 0.097 ms
2 192.168.0.1 (192.168.0.1) 8.717 ms 13.210 ms 13.552 ms
3 192.168.1.1 (192.168.1.1) 13.435 ms 13.413 ms 13.394 ms
4 10.115.222.7 (10.115.222.7) 27.564 ms 27.541 ms 27.662 ms
5 10.113.5.226 (10.113.5.226) 28.760 ms 28.909 ms 29.236 ms
6 * * *
7 10.111.5.9 (10.111.5.9) 11.810 ms 11.192 ms 13.026 ms
8 et-3-0-4-100-grtlurem1.net.telefonicaglobalsolutions.com (190.98.132.248) 25.205 ms 25.186 ms 25.003 ms
9 190.98.132.207 (190.98.132.207) 23.088 ms 23.355 ms 23.333 ms
10 104.26.2.13 (104.26.2.13) 22.653 ms 22.631 ms 22.729 ms
Un traceroute a linuxconfig.org tomó 10 saltos para llegar. Notará algunos asteriscos en el salto 6, lo que significa que ese dispositivo en particular bloqueó nuestra ruta de rastreo. Esto probablemente significa que el dispositivo está bloqueando ICMP específicamente. Podemos superar este bloqueo con traceroute intentando enviar diferentes tipos de paquetes (es decir, TCP en lugar de ICMP). A continuación se enumeran más opciones que podemos usar con traceroute.
El -I
La opción indica a traceroute que use paquetes ICMP ECHO, que se bloquean con menos frecuencia y, por lo general, pueden brindarle resultados más rápidos.
$ sudo traceroute -I linuxconfig.org
El -T
La opción indicará a traceroute que use TCP en lugar de ICMP. Este método se utiliza para recopilar datos que son más relevantes para un servidor web.
$ sudo traceroute -T linuxconfig.org
Para usar IPv4 o IPv6 específicamente, use el -4
o -6
opción, respectivamente.
$ traceroute -4 linuxconfig.org
OR
$ traceroute -6 linuxconfig.org
Si desea probar un puerto específico, -p
flag puede ayudar con eso.
$ traceroute -p 53 192.168.1.1
De forma predeterminada, los paquetes enviados desde traceroute tienen un TTL (tiempo de vida) de 30. En otras palabras, si se necesitan más de 30 saltos para llegar a un destino, el paquete se descarta y se abandona el intento de traceroute. Puede cambiar este comportamiento especificando un TTL diferente con -m
comando.
$ traceroute -m 60 linuxconfig.org
Tenga en cuenta que cualquiera de estas opciones se puede combinar en un solo comando. Por ejemplo:
$ sudo traceroute -I -4 -m 60 linuxconfig.org
Para ver todas las opciones adicionales para traceroute, use la opción de ayuda.
$ traceroute --help
Cómo usar mtr
Si mtr aún no está instalado en su sistema, abra una terminal de línea de comandos y escriba los siguientes comandos para instalarlo.
$ sudo apt update
$ sudo apt install mtr
La forma más sencilla de usar mtr es simplemente especificando un nombre de host, un nombre de dominio o una dirección IP a la que desea rastrear la ruta.
$ mtr linuxconfig.org
mtr traceroute a un sitio web
Verá que se abre una nueva ventana, donde mtr continúa ejecutando traceroute y actualizando sus resultados en tiempo real. Puede pensar en esto básicamente como una versión mucho más interactiva de traceroute. Las dos utilidades funcionan de la misma manera, pero algunos usuarios encontrarán mtr más fácil de usar o simplemente más agradable de ver.
Para renunciar a esta ventana interactiva y mantener sus resultados en la terminal, como lo hace traceroute, puede usar -r
opción.
$ mtr -r linuxconfig.org
comando mtr en la terminal
Para enviar paquetes TCP o UDP en lugar de ICMP ECHO (predeterminado), use --tcp
o --udp
banderas, respectivamente.
$ mtr --tcp linuxconfig.org
OR
$ mtr --udp linuxconfig.org
mtr tiene muchas otras opciones disponibles, lo que le brinda un control granular sobre sus pruebas de traceroute. Para comprenderlos todos, puede consultar la página del manual, que los explica en detalle. O para la versión abreviada, simplemente use --help
.
$ man mtr
OR
$ mtr --help
Pensamientos finales
En esta guía, vimos cómo usar traceroute en Kali Linux. También vimos cómo usar mtr, que se siente como una versión más moderna y robusta de traceroute. La utilidad traceroute, así como mtr, son útiles para ayudarnos a comprender la ruta de la red a un determinado dispositivo. También se pueden usar para ayudar a probar su conexión a Internet. Utilice estas herramientas para encontrar dispositivos que se encuentran entre Kali y un sistema de destino.