Escalado de privilegios en Windows 7 aprovechando ms12-042 (sysret)

Continuando con la temática del artículo sobre “bypassuac en Windows 8” (también aplicable a Windows 7), voy a mostrar otro método para realizar el escalado de privilegios desde una cuenta limitada de usuario en Windows 7 hasta “SYSTEM”.

La técnica de “BypassUAC” tan solo nos sirve para escalar privilegios desde un usuario local con derechos de administrador a “System”, pero no nos sirve si la cuenta a la que tenemos acceso en el sistema es una cuenta de usuario limitada.

Para conseguir elevar los privilegios en este caso, hay que recurrir a alguna otra  vulnerabilidad que nos permita saltarnos el UAC desde este tipo de cuentas. En este artículo vamos a utilizar “ms12-042 sysret”, una vulnerabilidad que afecta a Windows 7 x64 siempre y cuando no haya sido instalada la actualización de seguridad “MS12-042”.

Esta es la información del sistema utilizado en estas pruebas:

sysret0

Para aprovechar dicha vulnerabilidad existe una prueba de concepto (POC) pública que puede encontrarse aquí o aquí.  El «exploit» se puede descargar desde exploit-db.com aquí.

Como siempre, vamos a partir desde una sesión de meterpreter obtenida en una máquina remota con un usuario sin privilegios. El proceso lo hemos migrado al proceso 1304 (explorer.exe).

sysret1

Como se puede observar no podemos escalar a “System” directamente. Vamos a probar con “bypassuac”.

sysret2

Tampoco se nos permite escalar debido a que el usuario no esta en el grupo de administradores.

Descargamos y descomprimimos el exploit.

sysret3

Esto nos creara un directorio llamado “sysret” donde encontraremos tanto el código fuente del exploit como la versión compilada.

sysret4

Desde nuestra sesión de «meterpreter», subimos los archivos a un directorio donde el usuario pueda escribir.

sysret5

Como se puede observar en la siguiente imagen, el proceso 1304 (explorer.exe) pertenece al usuario “demo”.

sysret6

Desde «meterpreter», invocamos el comando “shell” para salir a la consola del sistema operativo y ejecutamos el binario “sysret.exe” el cual nos muestra una ayuda de cómo funciona.

sysret7

Vamos a utilizar el modo “-pid” para elevar el proceso 1304 (proceso donde hemos migrado nuestro meterpreter) al usuario “SYSTEM”. Por lo tanto, la ejecución sería algo como:

[code]sysret.exe –pid 1304[/code]

Esto nos mostrará una serie de mensajes por consola, y la sesión quedará bloqueada. La terminamos con Ctrl+C y pulsando “y” cuando nos pregunte por cerrar el canal.

sysret8

En este momento, hacemos “ps” para ver la información del proceso y ….

sysret9

Efectivamente el proceso pertenece a “SYSTEM”. Probamos con un “getuid”.

sysret10

Ya hemos escalado privilegios.

Ahora podemos bien utilizar “incognito” para crear usuarios o suplantar usuarios existentes en la red, o abrir una shell y hacer lo que queramos en el sistema (así como cualquier otra cosa que nos permita meterpreter…).

sysret11

O sacar los «hashes» del sistema.

sysret12

Bueno, y esto es todo por hoy, espero que os haya gustado el pequeño tutorial.

Un saludo, y gracias por leerme.

3 comentarios en «Escalado de privilegios en Windows 7 aprovechando ms12-042 (sysret)»

    • En este caso no tenía antivirus, y aunque no lo he probado con ningún antivirus y no se si el ejecutable sysret.exe lo detectan, como tenemos el fuente es posible modificarlo de una forma similar a lo explicado en el artículo de Bypass de AV para hacerlo funcionar sin problemas.

Responder a Ignacio Sorribas Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*