Hola!! Lo primero, antes de nada, me gustaría dar las gracias a la comunidad Derecho de la Red por dejarme escribir en su blog. En concreto al señor Luis Diago de Aguilar, que desde que nos conocimos en aquella HoneyCon no ha dejado de animarme. Gracias, bro.
Bueno, manos a la obra. Hoy traigo ya la primera cosita. Es una de esas herramientas que encuentras en un post random en Twitter. Se trata del Framework One-Lin3r desarrollado por el usuario conocido en github como D4Vinci.
Esta herrameinta, desarrollada en Python, tiene una funcionalidad muy parecida a la que tiene Metasploit. El menú interactivo es muy parecido a cuando utilizamos msfconsole desde la terminal.
¿Pero qué tiene de especial? La peculiaridad de esta herramienta es que posee una base de datos en la cual se registran distintas líneas que podemos utilizar para: una reverse shell, una bind shell, un dropper o una escalada de privilegios. Actualmente posee 176 one-liners tal y como los llama su creador.
Instalación
La instalación de esta herramienta es bastante simple. Si tenemos disponible el comando pip
en nuestro sistema, simplemente debemos ejecutar el siguiente comando para obtenerla:
pip3 install one-lin3r
Una vez instalada podemos comprobar que funciona ejecutando el comando:
one-lin3r -h
Esta es sin duda la manera más sencilla de obtener la herramienta, y como buenos informáticos que somos, es la que nos gusta. Por otro lado, por el motivo que sea, también se puede instalar desde el repositorio de github. En el caso de Kali linux se puede instalar de la siguiente manera:
git clone https://github.com/D4Vinci/One-Lin3r.git
sudo apt install libncurses5-dev
sudo pip3 install ./One-Lin3r --user one-lin3r -h
Muestro cómo se instala en el caso de las distribuciones basadas en Debian porque las pruebas de esta herramienta se han llevado a cabo en un MV Kali. En el caso de que se desee instalar en otro sistema operativo, en el proyecto de github están documentados todos los casos.
Probando la herramienta
Pues una vez instalada toca ver de qué es capaz. Para ejecutarla simplemente lanzamos el comando:
one-lin3r
Al hacerlo veremos lo siguiente por pantalla:
Como se puede ver, nos indica qué, efectivamente, dispone de 176 liners en el momento en el que se escribe este post. Al introducir el comando help
podemos ver la ayuda que se muestra en la anterior imagen. Si ejecutamos el comando list
o show
nos muestra todos los liners disponibles:
show
Como se puede ver en la imagen, la manera de clasificarlos es muy parecida a la que tiene Metasploit para clasificar sus exploits, payloads, etc. Por ejemplo, desde la propia imagen podemos saber que el resultado de la línea 155 tiene que ver con un liner para sistemas operativos Windows, escrito en Python, que tiene como objetivo establecer una reverse shell haciendo uso del protocolo tcp. Además, por otro lado, se puede observar que al final de cada línea aparece qué es, qué funcionalidad tiene. Si es un script de nmap, si es un dropper, etc.
Por supuesto también podemos buscar algo en concreto. Por ejemplo, existen liners relacionados con nuestro querido eternal blue. Por tanto, para buscar podemos utilizar el comando search
seguido de la cadena de texto que queremos buscar. A continuación, se muestra el ejemplo mencionado:
¿Ahora que ya tenemos el liner que queremos utilizar localizado, cómo lo utilizamos? Pues muy sencillo, tenemos dos opciones. La primera es utilizar, al igual que en Metasploit, el comando use
seguido del resultado que queremos utilizar. En este caso use
y el path que nos muestra en pantalla. En este caso use windows/scan/check_eternal_blue
. O en lugar de utilizar el comando use
utilizar el comando copy
.
¿Qué diferencia existe de un comando a otro? Pues que con el comando use
nos mostrará la línea que ejecuta la función descrita en pantalla. Copy
en su lugar lo que hara será copiarnos la línea en el portapapeles. (Dato: en la instalación del framework se ve como instala la librería pyperclip con esta finalidad)
Una vez hemos obtenido el liner debemos copiarlo en una consola o en la misma en la que se está ejecutando el framework escribiendo os
delante de este. De esta manera le indicamos que es un comando externo al framework lo que se va a ejecutar. Y, obviamente, debemos configurar la línea para que nos sirva en nuestro caso. En este ejemplo se debe reemplazar la palabra TARGET por la IP del equipo del cual queremos saber si es vulnerable o no a eternal blue.
Conclusiones
Como se ha podido ver, el desarrollador ha sido capaz de captar la esencia del famoso framework Metasploit. Por tanto, para aquellos usuarios habituados a este famoso framework, no será nada complicado utilizar esta nueva herramienta.
Esta herramienta puede venir muy bien en ejercicios de pentest en los cuales no contemos de conexión a Internet y necesitemos buscar alguna solución de una manera muy rápida. O simplemente que necesitemos buscar la información de una manera sencilla.
A mí personalmente me ha recordado a los siguientes recursos web.
Al final, cuantos más recursos tengamos, mejor. Espero que os haya gustado el post y que lo disfrutéis tanto como yo disfruté escribiéndolo.
___________________________________
Recordaros que podéis seguirnos en nuestro Twitter, Instagram y Telegram.
Si te gusta la labor que realizamos a diario…
AUTOR
Colaborador de “Derecho de la red”.