WhereIsMyWebShell

TAG -> Dockerlabs | CTF

Datos

Como siempre, primero que todo comprobamos conectividad con la maquina.

 ping -c 1 172.17.0.2 -R
PING 172.17.0.2 (172.17.0.2) 56(124) bytes of data.
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.115 ms
RR: 	172.17.0.1
		172.17.0.2
		172.17.0.2
		172.17.0.1

--- 172.17.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.115/0.115/0.115/0.000 ms

Respuesta exitosa y mediante el TTL intuimos que es una maquina Linux, así que después de crear nuestras carpetas de trabajo con mkt procedemos a hacer un escaneo primario.

 PortScanner -i 172.17.0.2 -t 1000 -s 2 -a V C -o recognition.txt

[+] Autor: Anonymous17
[+] Targeted: 172.17.0.2
[+] (TTL -> 64): Linux
[!] Escaneo de puertos (socket):

  [!] Puerto 80 abierto!
  [+] Port: 1000 / 1000 

[+] Lista de puertos abiertos: [80]
[+] Información de servicios y versiones:

  [+] 80/tcp    http      Apache httpd 2.4.57 ((Debian))

[+] Comprobando vulnerabilidades:

  [+] Tecnologías detectadas en HTTP:

        http://172.17.0.2:80 [200 OK] Apache[2.4.57],
        Country[RESERVED][ZZ],
        HTML5,
        HTTPServer[Debian Linux][Apache/2.4.57 (Debian)],
        IP[172.17.0.2],
        Title[Academia de Inglés (Inglis Academi)],

[*] Evidencia guardada en recognition.txt

Interesante, solo tiene el puerto 80 abierto, procedemos a ejecutar nmap para ver que podemos encontrar en este puerto.

Nada fuera de lo común, intentamos escanear los puertos de nuevo de una forma mas agresiva con nmap.

Vemos que parece tener la pagina por defecto de Apache, pero en el anterior escaneo nos apareció en el titulo algo sobre una academia de ingles, así que intentamos un ultimo escaneo para ir a ver la pagina y hacer fuzzing.

Nada interesante y después de ver la pagina, solo aparece la instalación de Apache por defecto, así que procedemos a hacer fuzzing con feroxbuster.

Escaneando por directorios nos aparece imágenes sobre clases de ingles y escuela, procedemos a escanear por archivos.

Ahora entendemos de donde sale lo de la escuela de ingles, si vamos a estos 2 últimos enlaces, vemos que el index tiene la pagina de la escuela de ingles (Puede ser que mi explorador se quedo con cache y me da este error de redirección), al final nos habla de que tiene un secreto en el directorio tmp no es valido como enlace, podría ser que nos ayude en la escalada de privilegios, en el enlace de warning no dicen "Esta web ha sido atacada por otro hacker, pero su webshell tiene un parámetro que no recuerdo...", nuestra tarea es descubrir esa puerta trasera por decirlo así.

Después de descargar las imágenes con wget no parecen tener algo interesante, en este punto podemos enumerar, si volvemos a hacer fuzzing, pero esta vez, solo buscamos archivos php y ademas eliminamos el filtrado de código de estados de feroxbuster encontramos algo interesante.

Procedemos a ver ese archivo shell.php intentamos hacer fuzzing al parámetro con wfuzz y después de esperar un rato por fin lo logramos.

Casualidad que el parámetro sea parameter, usando el comando id nos devuelve un código 200, tambien pudimos haber usado FFuf, que consume menos recursos y tendríamos el mismo resultado.

Con esta información podemos obtener un RCE, podemos usar el siguiente comando.

Usaremos el segundo comando y con mi función de urlencode, podemos hacer lo siguiente.

La función es la siguiente (Agregar al .bashrc o .zshrc), necesario tener php:

Nos ponemos en escucha con nc en el puerto 1234, y pasamos el comando al servidor mediante la web shell.

Ya tenemos acceso a la maquina victima, aunque la escalada es fácil y rápida, le daremos un tratamiento a la TTY de la siguiente manera.

Por ultimo sabiendo las dimensiones y si queremos una terminal de colores, podemos ejecutar el siguiente comando en la maquina victima.

Para la escalada de privilegios, recordemos que en el directorio /tmp nos dejaron una pista

La pista en realidad es la contraseña de root, así que podemos dar por terminada esta maquina.

Last updated