Post

Granny - Hack The Box

logo

Esta máquina no es tan complicada, en la primera parte, me aprovecho de un buffer overflow que corre bajo el contexto de un iis 6.0, con el cve pude dar con un script adecuado en python 2 para ganar acceso al sistema, también hay otra alternativa para ganar acceso, y es medianto los métodos que se aplican en el servidor web, una vez dentro viendo privilegios a nivel de sistema con el usuario con el que accedí, tenía el permiso SeImpersonatePrivilege habilitado, por ende el Juicypotato era lo adecuado, pero por problemas de versiones del sistema, terminé usando una variante del mismo, pero que se llamabá churrasco.exe, y con eso pude ejecutar comando como nt authority\system y hasta la cocina

Reconocimiento

Directorios de trabajo

1
2
3
mkdir granny
cd granny
mkdir nmap content exploit

nmap

1
sudo nmap -p- --open -sS --min-rate 5000 -Pn -n -sCV 10.10.10.15 -oN version-port

version-port

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Nmap scan report for 10.10.10.15
Host is up (0.16s latency).
Not shown: 65534 filtered tcp ports (no-response)
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT   STATE SERVICE VERSION
80/tcp open  http    Microsoft IIS httpd 6.0
|_http-server-header: Microsoft-IIS/6.0
| http-methods: 
|_  Potentially risky methods: TRACE DELETE COPY MOVE PROPFIND PROPPATCH SEARCH MKCOL LOCK UNLOCK PUT
| http-webdav-scan: 
|   Allowed Methods: OPTIONS, TRACE, GET, HEAD, DELETE, COPY, MOVE, PROPFIND, PROPPATCH, SEARCH, MKCOL, LOCK, UNLOCK
|   WebDAV type: Unknown
|   Server Date: Fri, 24 Nov 2023 05:10:46 GMT
|   Public Options: OPTIONS, TRACE, GET, HEAD, DELETE, PUT, POST, COPY, MOVE, MKCOL, PROPFIND, PROPPATCH, LOCK, UNLOCK, SEARCH
|_  Server Type: Microsoft-IIS/6.0
|_http-title: Under Construction
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
  • 80: http
    • Microsoft IIS httpd 6.0
    • esta versión es vulnerable a un buffer overflow

80: http

http

como dije, la versión actual del iis es la 10 y esa es 6.0 es decir tiene vulnerabilidades como una casa jejeje

whatweb

Listo ahora veamos cómo luce la página desde firefox

firefox

Con el plugin Wappalyzer podemos darnos idea de las cosas que funcionan tras el servidor web

intrusión

método 1

searchsploit

voy a buscar vulnerabilidades relacionadas con iis 6.0

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
searchsploit iis 6.0
--------------------------------------------------------------------------------------------- ---------------------------------
 Exploit Title                                                                               |  Path
--------------------------------------------------------------------------------------------- ---------------------------------
Microsoft IIS 4.0/5.0/6.0 - Internal IP Address/Internal Network Name Disclosure             | windows/remote/21057.txt
Microsoft IIS 5.0/6.0 FTP Server (Windows 2000) - Remote Stack Overflow                      | windows/remote/9541.pl
Microsoft IIS 5.0/6.0 FTP Server - Stack Exhaustion Denial of Service                        | windows/dos/9587.txt
Microsoft IIS 6.0 - '/AUX / '.aspx' Remote Denial of Service                                 | windows/dos/3965.pl
Microsoft IIS 6.0 - ASP Stack Overflow Stack Exhaustion (Denial of Service) (MS10-065)       | windows/dos/15167.txt
Microsoft IIS 6.0 - WebDAV 'ScStoragePathFromUrl' Remote Buffer Overflow                     | windows/remote/41738.py
Microsoft IIS 6.0 - WebDAV Remote Authentication Bypass                                      | windows/remote/8765.php
Microsoft IIS 6.0 - WebDAV Remote Authentication Bypass (1)                                  | windows/remote/8704.txt
Microsoft IIS 6.0 - WebDAV Remote Authentication Bypass (2)                                  | windows/remote/8806.pl
Microsoft IIS 6.0 - WebDAV Remote Authentication Bypass (Patch)                              | windows/remote/8754.patch
Microsoft IIS 6.0/7.5 (+ PHP) - Multiple Vulnerabilities                                     | windows/remote/19033.txt
--------------------------------------------------------------------------------------------- ---------------------------------

solo tenemos un script en python, y al parecer la vulnerabilidad tiene que ver con WebDAV, echemos un vistaso al CVE

1
2
3
4
5
6
7
searchsploit -w windows/remote/41738.py
---------------------------------------------------------------------------------- --------------------------------------------
 Exploit Title                                                                    |  URL
---------------------------------------------------------------------------------- --------------------------------------------
Microsoft IIS 6.0 - WebDAV 'ScStoragePathFromUrl' Remote Buffer Overflow          | https://www.exploit-db.com/exploits/41738
---------------------------------------------------------------------------------- --------------------------------------------

accediendo a esa dirección

y ejecutamos el script con python 2

y ya estamos dentro del sistema

método 2

en este punto, a diferencia del la máquian grandpa tenemos otra forma de ganar acceso

tenemos algunos métodos que podemos usar en la web, pero como digo , esto en la máquina grandpa, no podiamos usar el método que me interesa que es el PUT,

eso lo podemos ver con una utilidad devtest que lo que hace es intentar subir un archivo con diferentes extensiones y te reporta cual de ellas tiene éxito

esto en el equipo de grandpa no funcionó, listo podemos ver las extensiones a subir, notamos que .asp y .aspx no nos deja subir, es la que me interesa ya que el servidor web es un iis y sabemos que un iis interpreta asp y aspx, ahora que hacemos? vale vamos a aplicar un truquito, y es , que pasa si a un archivo aspx le cambiamos la extensión por ejemplo un txt que sí es válido, y una vez lo hayamos subido, le volvemos a cambian la extensión con el método MOVE

  • PUT
    • nos permite subir un archivo al servidor
  • MOVE
    • aplica un renombramiento a un archivo
    • es como si movieramos un archivo de un lucar a otro pero en el destino le cambiamos el nombre
    • es decir cambiar el nombre

hagamos pruebas a ver que tal

y desde la web accedemos al archivo

ahora buscamos un .aspx que nos permita ejecutar comandos en el sistema windows

y me voy a quedar con este, ahora hay que cambiarle la extensión a txt y subirlo

y desde la web se ve así

es claro que no lo está interpretando, tenemos que volver a dejarlo con la extensión aspx

y desde la web ya podemos ejecutar comandos como el mismo usuario que ganamos acceso con el script en python

ahora tenemos que subir el nc.exe y mandarnos una revere shell

y lo copiamos desde windows

solo queda mandarnos la reverse shell con un cmd y listo

lo bueno es que el binario de nc.exe nos va a servir para escalar privilegios en un momento

no puedo acceder al directorio Lakis y ver la flag, creo que vamos a tener o convertirnos en Lakis o ser Administrator

uy esto se pone bueno, en esta parte, creo que se puede usar el Juicypotato para ejecutar comandos como Administrador

el problema es que vamos a tener dificultad a la hora de ejecutar el Juicypotato por la versión del sistema, y cuando intentemor recurrir al un CLSIDs adecuado, llegamos a una sorpresa.

ya que el repositorio donde se encuentra el ejecutable no cuenta con soporte de CLSIDs para 2003

buscando un poco doy con un una interesante

jejeje el ejecutable lleva de nombre churrasco.exe, me lo descargo y lo paso a la máquina víctima

y solo tenemos que ejecutarlo y nos pide el comando a ejecutar como Administrador

para ganar un cmd como Administrador , solo ejecuto el binario de nc.exe que ya subimos al equipo

y ya tenemos una cmd como nt authority\system, me dirijo a ver la flag de Lakis

y la de Administrador

This post is licensed under CC BY 4.0 by the author.