Llegamos al último post sobre metasploit, en éste veremos algo de pivoting, escalamiento de privilegios y mantenimiento de acceso.
Una vez que ingresamos al equipo, la idea es poder mantener el acceso por el mayor tiempo posible, para esto es conveniente movernos de proceso y escalar privilegios.
Como podemos ver en la máquina víctima con windows 7, hemos ingresado y tenemos privilegios de administrador (mi equipo víctima se llama root), sin embargo buscaremos obtener privilegios de system authority
Entonces, listamos los procesos que se encuentran corriendo con ps
Como nos interesa escalar privilegios, nos conviene migrar el proceso sobre el cual estamos parados a uno de mayores privilegios, en mi caso el proceso svchost con el pid 128 o 184 nos sirve.
Para migrar de proceso debemos ejecutar migrate + pid
Ahora que sabemos que estamos parados sobre un proceso más estable y con mayores privilegios escalamos con getsystem
Verificamos nuestros privilegios otra vez con getuid.
Hay veces que no se puede escalar con ésta metodología y es necesario lanzar un exploit dentro de la máquina víctima para poder realizar el escalamiento, como por ejemplo con el cve-2015-1701 sobre windows 7 y vista.
Veamos entonces como pivotear una vez que hemos logrado migrar de proceso y escalar privilegios.
En meterpreter tenemos el comando autoroute, pueden ver sus opciones con
run autoroute -h.
Para este ejemplo estaremos parados sobre el mismo segmento de red (fiaca de configurar una vlan) sin embargo en un caso real muy probablemente estemos en dos segmentos distintos o hasta en dos redes diferentes.
Primero vemos en la red donde está parada la máquina víctima con un simple ifconfig
Luego, corremos autoroute pasándole como parámetro el segmento al cual queremos movernos con run autoroute -s Segmento
Y por último validamos el segmento de red en el que nos encontramos ahora con el comando run autoroute -p
Una vez realizado ésto, podemos por ejemplo obtener los hashes de las credenciales de los usuarios del sistema com hashdump
Ya que estamos parados en la red de la máquina víctima, vamos a realizar un scanning de hosts vivos para seguir atacando. Para que la sesión de meterpreter corra en segundo plano ejecutamos background
Como ya hemos visto en entradas anteriores, podemos utilizar un auxiliar de metasploit para realizar el descubrimiento de los equipos vivos dentro de la red con snmp_enum, al cual le definimos el rango de red y ya lo podemos correr.
En éste ejemplo podemos ver al host 192.168.206.128 vivo y listo para que comencemos nuevamente con el proceso de identificación de puerto y servicios disponibles.
Por último, si queremos recuperar la sesión que hemos dejado en background ejecutamos
sessions -i n.ºdeSession y ya la tenemos lista para seguir divirtiéndonos.
Sería interesante que prueben las diferentes características que tiene meterpreter, si hacen un help van a encontrar comandos organizados por familias con su descripción de qué hace cada uno, es sólo cosa de jugar un poco y descubrir por ejemplo cómo sacar un screenshot, inicializar la webcam de la víctima o hasta incluso reiniciarle el equipo.
Como siempre, cualquier duda o consulta, estamos por aquí.
Regards, @balderramaeric