Editorial
Executive summary — Editorial is an Easy Linux box with a very instructive chain end to end. A publisher's site lets you upload a book cover directly from a URL, which opens a classic SSRF in
/upload-cover. Using it as an internal port scanner withffufwe discover an unauthenticated API on127.0.0.1:5000that leaks thedevuser's credentials. Once inside over SSH, a forgotten git repository in the home directory keepsprod's password in its history (not the current code). Finally,prodcan sudo a script that clones repositories with GitPython 3.1.29, vulnerable to CVE-2022-24439: git'sext::transport allows injecting system commands, which we use to craft a SUID copy of/bin/shand get root. Path: SSRF → internal API → dev → git log → prod → GitPython (CVE-2022-24439) → root.
| Platform | Hack The Box |
| Operating system | Linux |
| Difficulty | Easy |
| Status | Retired |
| Target IP | 10.129.10.105 |
Attack map
[80] editorial.htb → /upload-cover accepts a URL (bookurl) → SSRF confirmed
│ ffuf against 127.0.0.1 → internal port 5000 → unauth API leaks dev creds
▼
[SSH] dev (user.txt)
│ leftover git repo in ~/apps → history reveals prod credentials
▼
[su] prod
│ sudo clone_prod_change.py (GitPython 3.1.29) → CVE-2022-24439 (ext:: protocol)
▼
[ROOT] SUID shell via /bin/sh copied to /tmp/rootsh
1. Reconnaissance
Port and service scanning always comes first: it tells us the attack surface before touching anything else.
nmap -p- --min-rate 10000 10.129.10.105
22/tcp open ssh
80/tcp open http
nmap -sCV -p22,80 10.129.10.105
22/tcp open ssh OpenSSH 8.9p1
80/tcp open http nginx 1.18.0
The web service redirects to http://editorial.htb, so we add the domain to our hosts file to browse it by name:
echo "10.129.10.105 editorial.htb" | sudo tee -a /etc/hosts
ping -c 2 editorial.htb
Resumen ejecutivo — Editorial es una máquina Linux Easy con una cadena de explotación muy didáctica de principio a fin. La web de una editorial deja subir la portada de un libro directamente desde una URL, lo que abre una SSRF clásica en
/upload-cover. Usándola como escáner de puertos internos conffufdescubrimos una API sin autenticación en127.0.0.1:5000que filtra las credenciales del usuariodev. Ya dentro por SSH, un repositorio git olvidado en el home guarda en su historial (no en el código actual) la contraseña deprod. Finalmente,prodpuede ejecutar porsudoun script que clona repositorios con GitPython 3.1.29, vulnerable a CVE-2022-24439: el protocoloext::de git permite inyectar comandos del sistema, con los que fabricamos una copia SUID de/bin/shy obtenemos root. Recorrido SSRF → API interna → dev → git log → prod → GitPython (CVE-2022-24439) → root.
| Plataforma | Hack The Box |
| Sistema operativo | Linux |
| Dificultad | Easy |
| Estado | Retired |
| IP objetivo | 10.129.10.105 |
Mapa del ataque
[80] editorial.htb → /upload-cover acepta una URL (bookurl) → SSRF confirmada
│ ffuf contra 127.0.0.1 → puerto interno 5000 → API sin auth filtra creds de dev
▼
[SSH] dev (user.txt)
│ repo git residual en ~/apps → historial revela credenciales de prod
▼
[su] prod
│ sudo clone_prod_change.py (GitPython 3.1.29) → CVE-2022-24439 (protocolo ext::)
▼
[ROOT] shell SUID vía /bin/sh copiado a /tmp/rootsh
1. Reconocimiento
El escaneo de puertos y servicios es siempre el primer paso: nos dice qué superficie de ataque tenemos antes de tocar nada.
nmap -p- --min-rate 10000 10.129.10.105
22/tcp open ssh
80/tcp open http
nmap -sCV -p22,80 10.129.10.105
22/tcp open ssh OpenSSH 8.9p1
80/tcp open http nginx 1.18.0
El servicio web redirige a http://editorial.htb, así que añadimos el dominio al fichero hosts para poder navegarlo por su nombre:
echo "10.129.10.105 editorial.htb" | sudo tee -a /etc/hosts
ping -c 2 editorial.htb
This content is Root Access only. Everything else on the site — the free tier, the whole public library — stays open.
See Root Access plansNo account? Create one free then upgrade from your console.
Este contenido es solo para Root Access. Todo lo demás del sitio — el nivel gratuito, toda la biblioteca pública — sigue abierto.
Ver planes de Root Access¿Sin cuenta? Crea una gratis y luego mejora desde tu consola.