RustScan – Un escáner para el pentesting

RustScan – Un escáner para el pentesting

Una noche estaba investigando (y por investigar me refiero a seguir aprendiendo más técnicas de pentesting a las 4 de la madrugada) y me topé con esta herramienta para el escaneo de puertos que, en realidad da muy buenos resultados, sobre todo en su velocidad, es una herramienta que promete bastante, es un escáner bastante sencillo de usar que combina su rapidez con una pequeña integración con nmap, así que nada, vamos a ver hoy como se instala y se usa, haré todas las pruebas sobre mi máquina ColddBox: Easy así que todo estará hecho en entornos controlados, es evidente que si haces uso de esta herramienta o alguna similar sobre activos de los cuales no tengas autorización, es algo que no está permitido por la ley bajo ninguna circunstancia, así que no hagas cosas raras.

Instalación de RustScan

Lo primero es ir al repositorio de github del proyecto, ahí puedes ver más sobre el escáner con algunos ejemplos y características que se muestran, bien, nos interesa ir a este apartado, para poder proceder a la descarga partiendo que yo uso un Kali Linux:

clear ya funciona

Tecnologías donde puede ser ejecutado RustScan

clear ya funciona

Descargar el paquete para Kali Linux de 64 bits

O, también podemos descargarlo con wget (la versión de 64 bits, si usas un sistema operativo de 32 bits, descargas la propia):

wget https://github.com/RustScan/RustScan/releases/download/2.0.1/rustscan_2.0.1_amd64.deb

Con el paquete descargado, es tan simple como, en el sistema operativo, ubicar el la ruta donde está dicho paquete (o, también puede ser por ruta relativa, por qué no) y ejecutar:

sudo dpkg -i rustscan_2.0.1_amd64.deb

Puedes omitir el comando sudo si ya te encuentras como root.

clear ya funciona

Instalando el paquete con dpkg

Por defecto, al instalarlo, nos guarda en binario de rustscan en /usr/bin, por lo que, teniendo esta ruta en el PATH, podemos tranquilamente ejecutar este escáner ignorando completamente la ruta donde nos encontremos.

Uso de RustScan

Para empezar tengo que aclarar algo y es que, por defecto RustScan escanea 3000 puertos por segundo, esto es una barbaridad ya que, cualquier sistema de protección a la hora de una auditoria de seguridad podría detectar esta actividad, hasta un IDS con depresión lo haría, eso sin mencionar que, también esta la posibilidad de que pueda causar un daño a un servicio mientras ejecuta el escaneo (esta es la importancia de saber al menos un poco de las herramientas que se usan y no ejecutar todo a lo loco, en plataformas controladas no pasa nada, pero en una auditoria real, un mínimo fallo puede ser un gran problema para la operabilidad de la empresas que se esté auditando).

Afortunadamente, los que mantienen esta herramienta saben de esto y nos permiten, a través de flags, el poder modificar la cantidad de puertos escaneados por segundo, (esto evidentemente afectara a la velocidad del escaneo, es algo lógico, pero es algo para tener en cuenta) aclarado esto, vamos a ver las flags más comunes:

  • -a = indicarle las o la dirección ip (siempre la usaremos).
  • -b = Poder modificar la cantidad de puertos analizados por segundo (lo que mencionamos arriba).
  • -g = Devolver el resultado del escaneo en un formato que podamos filtrar con grep.
  • -p = Especificar puertos en concreto a escanear.
  • -r = Especificar rango de puertos a escanear.
  • -u = Permite aumentar o decrementar (depende del valor que introduzcan) el límite de archivo.

Además de esto, ten en cuenta que RustScan usa nmap para sus escaneos en una parte, primero este detecta todos los puertos y luego, gracias a variables que define, pasa esos puertos y la ip a nmap, por ende, a menos que especifiquemos lo contrario, se ejecutará automáticamente un escaneo con nmap.

Por ejemplo, un escaneo a la ColddBox: Easy en el que queramos obtener todos los puertos abiertos, que a dichos puertos se les haga un escaneo con nmap, que la cantidad de puertos analizados por segundo sea de 500 y que el límite de archivo sea de 5000, usaríamos:

rustscan -b 500 -a 10.10.23.157 --ulimit 5000
clear ya funciona

Ejemplo de escaneo a la ColddBox: Easy

Por otro lado, ten en cuenta que el escaneo que se hace con nmap a través de esta herramienta es manipulable, es decir, que podemos indicarle que tipo de flags propias de nmap debe usar cuando el escaneo con este mismo se vaya a ejecutar, eso se hace poniendo “- -“ y seguidamente los parámetros en cuestión, por ejemplo, si queremos ejecutar el mismo escaneo anterior pero que esta vez el escaneo con nmap lleve las flags -sC y -sV, usaríamos:

rustscan -b 500 -a 10.10.23.157 --ulimit 5000 -- -sC -sV 
clear ya funciona

Ejemplo de escaneo integrando nmap

De esta forma puedes ir jugando con las flags para hacer más personalizado el escaneo.

He de decir que, esta herramienta tiene detrás muchos puntos de vista, algunos piensan que es peor que nmap, otros que es mejor, en realidad bajo las pruebas que hice, probando máquinas en local y en remoto en distintas plataformas, puedo decir que en la mayoría de casos me ha dado buenos resultados, sin embargo les dejo este artículo de ironhackers donde hablan del tema y lo comparan directamente con nmap.

Al final esto es lo divertido, comparar opiniones de forma sana, el mundo sería muy aburrido si todos pensaramos igual ¿no crees?.

Únete al servidor de Discord de Coldd Security y aprende ciberseguridad cada día.

Anuncio

Sobre el Autor

Martin Frias

Founder of Coldd Security

2 Comentarios

  1. Jorge Comino

    Justo terminé la room de rustscan en tryhackme, este articulo me vino de perlas para practicar algo más :))

    Responder
  2. Manuel Sánchez

    Me ha gustado el articulo, muy bien explicado como siempre, y si, concuerdo contigo, mucho odio hacia este escaner, que no digo yo que con nmap usando ciertos parametros se pueda acelerar el escaneo, si, pero al final no todo puede ser tan monotono, hay que ver otras alternativas que pueden funcionar en varios casos adicionales, gracias por compartir!

    Responder

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información adicional sobre protección de datos:
Responsable: Martin Frias.
Finalidad: Moderar los comentarios de este sitio web.
Cesión: NO se cederán a nadie, salvo obligación legal.
Derechos: Acceso, rectificación, cancelación y borrado de tus datos.
Legitimación: Tu consentido expreso.

REDES SOCIALES

Newsletter

Estadísticas

  • 106.292
  • 51

TheHackerSnow

0

Share This