# E-Corp

## Preparación de laboratorio

Link: <https://ctf.academia-ciberseguridad.com/machines>

CyberConquer usa imágenes Docker para poder levantar los laboratorios, en este caso procedemos a descargar el archivo .zip, ¡No es necesario loguearse!

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2Fl5I31EzdXdOwzUMYiojq%2Fimage.png?alt=media&#x26;token=aff7b433-a4b4-4544-9ae4-ab78b1236cfa" alt="" width="260"><figcaption></figcaption></figure>

Una vez descargado el archivo zip, procedemos a descomprimirlo con el comando:

·         unzip ecorp.zip

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FGrjz8RR2qvXefaMLyflQ%2Fimage.png?alt=media&#x26;token=efb21c9f-4f81-493c-aff7-74b5e72f0f05" alt=""><figcaption></figcaption></figure>

Para correr el laboratorio ejecutamos el archivo “script.sh” seguido el archivo .tar

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FXt4jzfa5ZkrOoea5URXy%2Fimage.png?alt=media&#x26;token=3a211506-5fc8-42d2-b7e1-c4811db9b49e" alt=""><figcaption></figcaption></figure>

Una vez ejecutado el comando nos aparecerá un banner donde podremos ver la IP de la maquina y un prompt donde podremos colocar las banderas a nivel usuario, un vez habiendo encontrado esa bandera aparecerá el prompt para la bandera root.

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FyYdcl083Kj0Gd1tVIK8p%2Fimage.png?alt=media&#x26;token=9d1907bf-572c-4ab7-bf3a-55a67a7be9f3" alt=""><figcaption></figcaption></figure>

## Enumeración

Una vez levantado el laboratorio comprobamos la conexión con la maquina mandándole 3 paquetes ICMP utilizando ping

·        `ping -c 3 172.17.0.3`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FDjN1ev6NI03c49Cba170%2Fimage.png?alt=media&#x26;token=cbab3761-551d-4a2b-a3b1-24daab95e3d8" alt=""><figcaption></figcaption></figure>

Una vez comprobando la conexión procedemos a enumerar puertos abiertos, servicio y sus versiones para identificar el vector de ataque, utilizando la herramienta nmap:

·         `sudo nmap -p- --open -sS -n 172.17.0.3 -oG AllPorts`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2Fp9X36JxjJ0hmkIbO8F2i%2Fimage.png?alt=media&#x26;token=467d5b66-4d4e-4188-9cf8-e2856921e5d3" alt=""><figcaption></figcaption></figure>

Identificamos 2 puertos abiertos, 22 y 80, procedemos a usar la bandera -sV en nmap para poder identificar las versiones de los servicios, esto nos puede ayudar a poder identificar si hay alguna vulnerabilidad en sus versiones que podamos aprovechar:

·         `sudo nmap -p22,80 -sS -sV -Pn -n 172.17.0.3 -o Ports_Version`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FLKT4COwKOBQs3Pvosg7p%2Fimage.png?alt=media&#x26;token=de206c8e-1236-4268-8ac7-d8624e3063e6" alt=""><figcaption></figcaption></figure>

Revisamos el servicio http en nuestro navegador, para encontrar información relevante

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FD8VMRXbD7wTY2b2IPiZ6%2Fimage.png?alt=media&#x26;token=593aff5d-01da-489d-8111-9bc4dcec76fb" alt=""><figcaption></figcaption></figure>

Procedemos a realizar fuzzing con dirsearch para poder identificar directorios, archivos o documentos que nos puedan dar información delicada.

·         `dirsearch -u` [`http://172.17.0.3/`](http://172.17.0.3/)

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FrNuWH76KSmwDwpPrpZUd%2Fimage.png?alt=media&#x26;token=db9a5be4-d399-4b9a-a393-4f12cc18cf98" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2F9cNmttlSoQu48Z6NaApW%2Fimage.png?alt=media&#x26;token=ae2483f4-c37c-44b6-b041-e5151b94e71e" alt=""><figcaption></figcaption></figure>

En el escaneo pudimos encontrar dos archivos, file.php  y users.db, procedemos a revisar uno por uno, para ver que hay en su contenido

&#x20;

/file.php: hay un panel de logueo

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FU1B6eYxzchOYogrDdPiP%2Fimage.png?alt=media&#x26;token=c4266807-9f12-4a4b-bf3f-668bc9d94606" alt=""><figcaption></figcaption></figure>

/users.db: es un archivo .db descargable, lo guardamos y analizamos a detalle

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FCgekAt5jIBBaGS4B9bCA%2Fimage.png?alt=media&#x26;token=7f5e7f18-eb13-402f-bbe7-a9fc844a5adf" alt=""><figcaption></figcaption></figure>

Revisamos el archivo users.db con la herramienta sqlite3 para ver su contenido

·        `sqlite3 users.db`

·         `.tables`

·        `select * froms users;`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FRepm9Hk4Cn0M57T6GiyE%2Fimage.png?alt=media&#x26;token=6490d206-a6f8-4749-b67f-de2fc30f2f40" alt=""><figcaption></figcaption></figure>

## Explotación

¡Eureka!, encontramos dos usuarios con su contraseña, podemos empezar intentar loguearnos en el directorio encontrado anteriormente,

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2Ff2Ldlm9tXgsr7C4IwJu4%2Fimage.png?alt=media&#x26;token=a30cfb57-34f0-4d20-9079-74468824e9e5" alt=""><figcaption></figcaption></figure>

Las credenciales que nos dieron el acceso fueron:

·         **ecoin | kill\_process**

&#x20;

Al hacer una búsqueda, vemos que no hay tanta información.

Procedemos a hacer un logueo por ssh, ya que aquí no hay mucha información mas que los archivos listados.

Usaremos las otras credenciales encontradas:  **mr\_robot | Wh1teRose**

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FROBxNIynsq0vdlIrWmMV%2Fimage.png?alt=media&#x26;token=80441ea4-8f96-4db1-9ddf-6ce0924f1adc" alt=""><figcaption></figcaption></figure>

¡Bingo!, estamos dentro del servidor como el usuario **mr\_robot**, procedemos a buscar la primer flag, listando y moviéndonos entre directorios.

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FhoV8ZUwZV9kJ3pt6QQ33%2Fimage.png?alt=media&#x26;token=b93365f1-5cf8-4dde-9503-bc9f2f3ca0a9" alt=""><figcaption></figcaption></figure>

Encontramos la primer flag en el directorio del usuario elliot, pero también encontramos algunos archivos interesantes, como el BBQ.png y el binario exit, las extraemos a nuestra maquina atacante para analizarlas revisar su contenido o metadatos, recuerden nunca dejar pasar por desapercibido nada.

Usaremos la herramienta scp para traer los archivos nuestra máquina, de la siguiente manera:

·         `scp mr_robot@172.17.0.3:/home/mr_robot/BBQ.png .`

·         Mandamos a llamar la herramienta, indicamos el usuario y host, seguido de la ruta del archivo, e indicamos donde queremos el archivo en este caso puse un punto “.”, porque lo quiero en el directorio que me encuentro, lo que se traduciría como “aqui” y procedemos a poner la pass

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FZluGIl0intvJhczCXh3A%2Fimage.png?alt=media&#x26;token=e3875d19-b9e6-437d-bdc6-7442d050c101" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FLFytPH787sVgfrHjVwE2%2Fimage.png?alt=media&#x26;token=527fc47e-e628-424a-b9a6-b6df70bc4781" alt=""><figcaption></figcaption></figure>

•  `scp mr_robot@172.17.0.3:/home/elliot/exit .`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FyQyCvA05Sdrw1ZkU4s3Y%2Fimage.png?alt=media&#x26;token=3eaee389-83a6-4b8e-ae2b-5bb6d8ed8ff4" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2F5awLynj9ELOcl4g2Ccfa%2Fimage.png?alt=media&#x26;token=d1ab89d7-c676-4835-bab0-a196733ff016" alt=""><figcaption></figcaption></figure>

Analizamos los archivos con las siguientes herramientas; exiftool y strings

·        `exiftool BBQ.png`

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FHQqbJp7x2elmhtgXepKm%2Fimage.png?alt=media&#x26;token=570d51af-f3c0-40c5-83d3-16f171c76104" alt=""><figcaption></figcaption></figure>

Encontramos unas password.

·         <kbd>strings exit</kbd>

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FqyZVfF5ukH2lawe7S0o7%2Fimage.png?alt=media&#x26;token=7fc26287-1e99-43c3-90f9-cedd063ca05d" alt=""><figcaption></figcaption></figure>

## Post-Explotación

Encontramos dos cosas muy interesantes, una password y un código curioso, que probablemente también sea una contraseña.

Al revisar el directorio /home/ del servidor vimos que hay 3 usuarios; ellior, mr\_robot y tyrell.

Procedemos a buscar información de estos usuarios con el comando id, este nos muestra información sobre el usuario actual, como su identificador de usuario (UID), identificador de grupo (GID), y los grupos a los que pertenece

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FB1q6pachz3zmX1dSyGPL%2Fimage.png?alt=media&#x26;token=1151b0e9-da2e-4264-afa4-1f54e7dd3bd5" alt=""><figcaption></figcaption></figure>

En el usuario tyrell encontramos que pertenece al grupo sudo, asi que intentamos probando las contraseñas encontradas para intentar subir privilegios

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2F7jO5VOBwBlXhT8fShaZA%2Fimage.png?alt=media&#x26;token=f11133d6-822d-4e83-9764-e5c31c920c12" alt=""><figcaption></figcaption></figure>

No nos deja pasar directamente a tyrell, asi que nos logueamos al usuario elliot, probando las contraseñas, la de la imagen BBQ.png fue la que nos dio el cambio de usuario, ahora procedemos cambiar a tyrell

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FHqjj2Clf18MrftYMaUD5%2Fimage.png?alt=media&#x26;token=6b6a4296-ba8b-4814-b082-f46f894faec4" alt=""><figcaption></figcaption></figure>

¡Bingo!, el código en el binario **“exit”** era la pass para el usuario tyrell, procedemos a hacer un sudo -l poniendo nuevamente la contraseña encontrada

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FLjS7IeVqCPZaqQC150Cy%2Fimage.png?alt=media&#x26;token=c0ddf695-2696-45b4-a5de-520477e69366" alt=""><figcaption></figcaption></figure>

Vemos que tiene todos los permisos, y basta con poner el comando sudo su para subir a root.

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FZ5YMKon72TVADV3QDl2u%2Fimage.png?alt=media&#x26;token=f6b2beb5-8a02-4277-8071-260fa38a03b2" alt=""><figcaption></figcaption></figure>

Y logramos obtener la flag root.txt

<figure><img src="https://2635113826-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5daWhBxoDFtT9Z7bT21e%2Fuploads%2FCtNzDRSfUebHfDWJ0i5m%2Fimage.png?alt=media&#x26;token=9dd722fe-2b28-4ae0-acc6-b232e0985292" alt=""><figcaption></figcaption></figure>
