_____ _    _         _____  _____ _   _          _____   _____  
    / ____| |  | |  /\   |  __ \|_   _| \ | |   /\   / _ \ \ / / _ \ 
   | |  __| |  | | /  \  | |__) | | | |  \| |  /  \ | | | \ V / | | |
   | | |_ | |  | |/ /\ \ |  _  /  | | | . ` | / /\ \| | | |> <| | | |
   | |__| | |__| / ____ \| | \ \ _| |_| |\  |/ ____ \ |_| / . \ |_| |
    \_____|\____/_/    \_\_|  \_\_____|_| \_/_/    \_\___/_/ \_\___/ 
                                                                     
                    ./Guarina0x0
Titulo: OSCP - Seppuku Solstice
Fecha: 21-10-2021
Descripcion: Enumeracion - Fuzzing - ID-RSA - Hydra

OSCP - Seppuku Solstice Writeup

## Ping:

ping -c1 192.168.86.90

Mediante el comando ping vamos a trazar una ruta ICMP para ver si la maquina esta activa y ante que tipo de sistema operativo estamos

Podemos ver que la respuesta del ttl es 63 , el TTL en maquinas Linux es 64 y en maquinas Windows 128 , en este caso es 63 porque pasa por un nodo intermediario.

## Enumeracion :

Ahora vamos a proceder a ver que servicios tiene esta maquina abiertos para ello vamos a realizar una enumeracion de puertos:

nmap -sS -T5 -p- --open -n -Pn 192.168.86.90

  • Puerto 21 FTP
  • Puerto 22 SSH
  • Puerto 80 HTTP
  • Puerto 139 Netbios-ssn
  • Puerto 445 Microsoft-ds
  • Puerto 7080 Empowerid
  • Puerto 7601 Desconocido
  • Puerto 8088 Radan-http
  • Vamos aplicar un reconocimiento de puertos mas intensivo , aplicando scripts basicos de enumeracion para detectar version y servicios

    Como tenemos dos puertos web abiertos , vamos a usar la herramienta WhatWeb para ver si utilizan algun CMS o encontrar algo interesante

    Nos reporta que en el puerto 80 necesitamos credenciales para acceder a la pagina web , por lo que vamos a seguir enumerando

    Mediante Smbmap vamos a enumerar los recursos compartidos y ver los privilegios que tenemos de acceso

    Podemos ver 2 recursos pero a ninguno de los dos tenemos acceso.

    Vamos aplicar script de Nmap para localizar si el Smb es vulnerable algun ataque

    nmap -p 139,445 --script "smb-vuln*" 192.168.86.90

    Tras el reconocimiento de Nmap , nos dice que solo es vulnerable a un ataque de DOS , por lo que no nos interesa.

    ## Reconocimiento Web :

    Vamos a empezar con el reconocimiento web , empezaremos por el puerto 80 en el cual la pagina web nos pide credenciales para poder acceder

    Por lo que lo vamos a dejar a un lado , y vamos a listar el contenido del puerto 8088 y vemos que tenemos una imagen de fondo y poca cosa mas

    Mediante la herramienta Wfuzz vamos aplicar un fuzzing para listar directorios web mediante el uso de un diccionario y nos reporta dos rutas potenciales

  • /cgi-bin
  • /docs
  • Si entramos al directorio /cgi-bin no contiene nada , pero podriamos realizar un ataque shell shock , pero como no nos reporta gran cosa vamos aplicar fuzzing pero sumandole extensiones y aqui nos reporta un fichero llamado index.php

    Parece una consola interactiva en la que nos pide credenciales , si buscamos exploit para este tipo de terminal web no vamos a encontrar gran cosa

    Por lo que volvi a realizar otra vez un escaneo con Nmap y me reporto un puerto extra que no me habia reportado antes , el puerto 7601 , que contenia la misma imagen que el puerto 8088 , pero al realizarle fuzzing nos encontrabamos con otro tipo de contenido

    Vemos una web que nos tiene gran contenido , pero tras un tiempo de fuzzing nos reporta un directorio interesante /keys

    Donde hay alojadas 2 claves ID_RSA , por lo que vamos a descargarlas a nuestro directorio de trabajo

    Si abrimos el fichero , vamos a poder ver que se trata de un ID_RSA por lo que vamos asignarle permiso 600

    Despues la herramienta Wfuzz nos reporto otro directorio llamado /secret

    El cual contiene un diccionario de contraseñas , un usuario potencial del sistema

    Por lo que vamos a descargar esos ficheros a nuestro directorio actual de trabajo mediante curl

    Ahora ya podemos ver el contenido de los ficheros descargados

    Por lo que si tenemos el servicio SSH abierto , tenemos un diccionario de contraseñas y un usuario potencial podemos efectuar un ataque de fuerza bruta al servicio SSH mediante Hydra

    Y hay nos reporta la contraseña para el usuario "seppuku"

    ## Escalada de Privilegios:

    Ya podemos visualizar el flag y desde el usuario Seppuku , no vamos a poder ver el flag del usuario Root

    Si listamos el escritorio del usuario , vamos a encontrar un fichero oculto llamado .passwd , el cual contiene una potencial contraseña

    Si vemos los usuarios que hay en el sistema nos fijamos que tenemos otros 2 mas , por lo que tenemos que pivotar entre los usuarios

    Como estamos en una Retricted Bash vamos a tener que escaparla mediante python

    Si tiramos sudo -l para ver archivos o procesos que tengan el bit SUID activado para poder ejecutar procesos como root nos reporta la siguiente ruta

    Pero el fichero esta en el home del usuario tano , tenemos que tener en cuenta que todavia tenemos un ID_RSA , podemos probar si es el del usuario tano para pivotar en este usuario

    Una vez hemos pivotado en el usuario tano vamos a crear la carpeta .cgi_bin y vamos añadir un fichero llamado bin donde vamos alojar una intruccion para que nos ejecute un shell

    Ahora si volvemos al usuario samurai y ejecutamos la orden que nos daba con el sudo -l , conseguimos tener una shell como Root

    Y ya tendriamos la maquina Seppuku explotada!