Basic Pentesting
Basic Pentesting
Basic Pentesting
0- Introducción
Este artículo trata sobre la sala de Basic Pentesting creada por TryHackMe. Es un CTF
gratuito que todos pueden realizar.
Esta sala cubre todos los elementos básicos de pentesting, que son la enumeración de
servicios, la enumeración de Linux, la fuerza bruta, el ataque de diccionario, el
descifrado de hash y la escalada de privilegios. Sin más preámbulos, entremos en el
desafío.
1- Enumeración
El escaneo Nmap es imprescindible para todos los pentester. Esta es una de las formas
de obtener información sobre una máquina. Ingrese el siguiente comando para realizar
el escaneo.
elhackeretico.com | info@elhackeretico.com
Tenemos un directorio oculto llamado /development. Vamos a ver que contiene.
/development/j.txt
elhackeretico.com | info@elhackeretico.com
El dev.txt habla de algo relacionado con los puntales de APACHE con la versión 2.5.12,
mientras que el archivo j.txt menciona un directorio con el hash de contraseña dentro de
la máquina. Dejamos a un lado j.txt primero ya que aún no nos hemos conectado a la
máquina.
3- Recopilación de información
Al buscar en Google APACHE struts CVE, me encontré con este sitio.
probar.
3
No podemos obtener un shell inverso para el exploit. ¿Qué más podemos hacer?
¿Todavía recuerdas que tenemos un puerto SMB que aún no hemos explotado?
elhackeretico.com | info@elhackeretico.com
Hablando de enumerar en samba, enum4linux podría ser la solución. Encienda su
enum4linux con el siguiente comando.
4
Después de unos minutos, se le mostrarán los siguientes resultados.
elhackeretico.com | info@elhackeretico.com
5- Acceso a la máquina por SSH
Vamos a iniciar sesión a través del puerto 22 SSH con el par usuario y contraseña que
tenemos.
5
6- Escalada de privilegios
Listar el archivo en el directorio jan no nos da ninguna respuesta para escalar el privilegio.
¿Recuerdas que tenemos el usuario kay? Vamos a ver qué información podemos
encontrar.
elhackeretico.com | info@elhackeretico.com
Hay muchos archivos dentro de la carpeta kay. Ahora estamos interesados en el archivo
'pass.bak'. Acceder al archivo requería el permiso de kay. ¿Qué más podemos hacer para
escalar como usuario jan?
Aunque no soy partidario de herramientas automátizadas, vamos a usar linpeas para
buscar formas de escalar mis privilegios en un servidor. Hay muchas maneras de buscar
como elevar privilegios, pero esta es realmente útil y vamos a aprender a hacerlo.
Primero deberemos descargar el ejecutable de linpeas.sh desde github con el siguiente
comando.
elhackeretico.com | info@elhackeretico.com
También una clave ssh para el usuario kay.
elhackeretico.com | info@elhackeretico.com
Copie el resultado y colóquelo en un nuevo archivo en su máquina kali llamado
kay_id_rsa.
Luego, hay que hashear la clave con el siguiente comando (para kali Linux).
Después de eso, descifra el hash con la famosa lista de palabras rockyou.txt con el
siguiente comando.
Dado que esta es una frase de contraseña para la clave pública ssh (esta NO es una
contraseña ssh REAL para kay), debe acceder a ssh de kay con el siguiente comando.
7- Contraseña de kay
Aun así, recuerda el archivo pass.bak. Volvamos a él.
elhackeretico.com | info@elhackeretico.com
Esa es la contraseña súper larga de Kay. Jan realmente hizo un gran daño a kay y al
sistema al no cambiar la contraseña de acuerdo con la política de contraseñas. Moraleja
de la historia, recordar siempre a su equipo que use una contraseña segura.
Kay puede acceder a todos los comandos Sudo. ¡Eso es genial! Ahora, hagámonos un
superusuario.
Tenemos una bandera dentro de la carpeta raíz con el mensaje del autor. ¡Ya hemos
resuelto oficialmente el desafío!
elhackeretico.com | info@elhackeretico.com