14 ~ Madness - Linux
Última actualización
Última actualización
Una vez iniciada la maquina lo primero que haremos será realizar un ping a la maquina para saber dos cosas, la primera para saber si tenemos conexión con la maquina y la segunda para conocer el tipo de sistema operativo al que nos enfrentamos.
En este caso el ttl es 63 siendo una maquina Linux, aunque realmente el ttl de una maquina Linux es de 64, y esto es debido a que hay varios nodos intermediarios que hacen que le reste al ttl.
Una vez verificada la conexión con la maquina, vamos a realizar un escaneo de los puertos y servicios abiertos de la maquina.
Descripción de los parámetros:
-p- : Escanea los puertos especificados, en este caso escanea los 65535 puertos.
--open : Muestra solo los puertos abiertos.
-sS : Escanea mediante TCP SYN.
--min-rate : Envía paquetes no mas lentos que el número indicado por segundo en nuestro caso 5000.
-Pn : Omite el descubrimiento de host.
-n : No realiza resolución DNS.
-vvv : Muestra la información mientras se esta realizando el escaneo.
IP : La IP que queremos escanear.
-oG : Guarda la salida del escaneo en un formato grepeable.
Una vez finalizado el escaneo, vemos los puertos que tiene abierto, a continuación realizaremos otro escaneo mas exhaustivo para saber mas información acerca de los servicios que corren en los puertos.
Descripción de los parámetros:
-p : Escanea los puertos especificados.
-sC : Lanza varios scripts defaults de nmap.
-sV : Determina los servicios que están corriendo en los puertos además de información extra.
IP : La IP que queremos escanear.
-oN : Guarda la salida en el formato de nmap.
Lo primero que haremos será lanzar la herramienta whatweb para ver información de la pagina.
Luego entramos a la pagina y vemos que es una pagina default de apache, pero hay algo raro si nos fijamos en el logo parece que no carga, tras ver el código fuente vemos que carga una imagen de una ruta distinta thm.jpg.
Tras lanzar la herramienta gobuster, vemos que no encontramos nada, entonces pasamos a examinar la imagen a ver si contiene alguna información oculta.
Parece que tenemos algo extraño en la imagen, es un archivo .jpg pero parece que esta siendo tratado como un .png. Intentamos abrir la imagen y parece corrompida.
Vamos a buscar si podemos arreglarlo, y tras un rato buscando vemos que con la herramienta hexedit podremos modificar el contenido de la imagen, al abrir el editor vemos a la derecha que efectivamente aparece como PNG, tenemos que cambiarlo a JPG, toca volver a buscar por internet y vemos que lo que hay que cambiar son unos magic number.
Una vez cambiado los magic numbers, guardamos los cambios e intentamos abrir la imagen de nuevo y parece ser que ha sido arreglado. Y en la imagen vemos una ruta oculta.
Al dirigirnos a esa ruta, vemos que nos piden un numero secreto, si miramos el código fuente, vemos que nos da una pista acerca del numero secreto, vamos a crear un script en bash para averiguar el numero secreto.
Tras esperar un poco, nos da el numero secreto y nos da una especie de contraseña.
Lo único que tenemos es la foto descargada anteriormente, vamos a ver con la herramienta steghide si tenemos algún archivo oculto dentro de la imagen.
Descripción de los parámetros:
extract : Extrae los datos.
-sf : Escribe el resultado en un fichero con el mismo nombre.
Y ahora no tenemos ningún dato mas de donde podamos tirar, pero si nos fijamos bien en la pagina de thm hay una foto, vamos a descargarla y ver si contiene algo interesante.
Y tenemos un archivo .txt, hay que pensar fuera de la caja a veces.
Vale, tenemos un usuario y una contraseña, y el servicio ssh estaba abierto vamos a probar a conectarnos a el.
Y estamos dentro de la maquina.
Lo primero que haremos será ver la flag del usuario.
Y ahora vamos a escalar privilegios, realizamos una enumeración del sistema y vemos que tenemos un permiso SUID en screen-4.5.0.
Descripción de los parámetros:
-perm : Le indicamos que vamos a buscar permisos.
-u=s : le indicamos que vamos a buscar permisos de usuario setuid.
2>/dev/null : Mandamos los errores al /dev/null.
Vale, vamos a buscar en searchsploit si tenemos algo.
Descripción de los parámetros:
-m : Copia el exploit.
Lo primero que haremos será pasar la herramienta dos2unix para evitar problemas, y lo transferimos a la maquina victima.
Vemos que tenemos en la maquina victima el comando wget, nos abrimos un servidor con pyhthon3 y realizamos un wget.
Le damos permiso de ejecución y somos ROOT!.
Efectivamente tenemos un archivo .txt, donde nos da un usuario encriptado, volvemos a buscar por internet como desencriptarlo, y parece que esta encriptado en .