CARGANDO

Escribe para buscar

Auditoria WiFi II

Auditoria WiFi II

En un post anterior vimos como ejecutar una auditoría WiFi mediante la herramienta Fluxion. En esta ocasión, vamos a hacer algo parecido, pero sin la utilización de una herramienta desarrollada para este fin, si no uniendo varias piezas de un puzzle y tener el mismo resultado.

Esta forma me parece muy didáctica y personalizable, y creo que puede servir, en primer lugar, para aprender como se estructura la componente; y en segundo lugar, personalizar el “ataque” como se desee.

Punto de red WiFi

Lo que haremos en primer lugar, es comprobar si la tarjeta de red WiFi es compatible con la creación de un AP. Para ello, con la ejecución del siguiente comando es suficiente:

# iw list | grep “Supported interface modes” -A 8

Veremos algo como la imagen anterior, donde se identifica la opción “AP”, validando la tarjeta.

Lo siguiente que debemos realizar es la instalación de una aplicación que permita crear estos puntos de red, para este caso se utiliza “hostapd”. Realizamos la instalación mediante:

# apt -y install hostapd

Una vez realizada la instalación, se configura con los parámetros deseados. En primer lugar, en la ruta “/etc/default/hostapd”, se define la ubicación del archivo de configuración, en este caso, “/etc/hostapd/hostapd.conf”

Lo siguiente que hacemos es definir en el archivo de configuración anterior, los siguientes parámetros:

  • Interfaz utilizada: wlan0
  • Banda utilizada (hw_mode): 2,4 GHz
  • Canal utilizado (channel): 10
  • Soporte para 802.11n (ieee80211n=1)
  • Soporte para QoS (wmm_enabled)
  • Nombre del punto de acceso: FREE_WIFI_SYSBEARDS
  • Tipo de cifrado (auth_algs): WPA
  • Solo cifrado WPA 2 (wpa=2)
  • Intercambio de claves mediante CCMP

Los parámetros anteriores pueden ser modificados según se requiera. Por último, habilitamos la herramienta “hostapd” para su uso:

# systemctl unmask hostapd

# systemctl enable hostapd

# systemctl start hostapd

Si todo ha funcionado correctamente, podemos comprobar que ya se propaga la red WiFi.

Red y servidor DHCP

Disponer de red WiFi sin un direccionamiento no servirá de mucho en nuestro objetivo, por ello utilizaremos la herramienta “DNSmasq” como solución de DHCP.

# apt -y install dnsmasq

Seguidamente, y antes de configurar el servidor DHCP, establecemos una dirección IP estática en el servidor Kali desde “/etc/network/interfaces“:

Continuando ahora si con el servidor DHCP, establecemos los siguientes parámetros en el archivo de configuración “/etc/dnsmasq.conf“:

De esta forma, se configura la tarjeta de red WiFi con un rango dinámico de IPs desde la 192.168.100.1 a la 192.168.100.200, con periodo de validez de 24 horas. Las opciones más destacables en esta configuración que han de ser resaltadas son:

  • “dhcp-option”: se establece mediante opciones DHCP el servidor DNS
  • “address”: opción muy importante, que indica que todas las solicitudes (#) sean resueltas por la IP 192.168.100.254. Así, se realiza un redirección de todas las peticiones al servidor Kali.

Otro punto importante que debe ser modificado es activar el reenvío en el servidor, de forma que actúe como un router. Esto se puede hacer modificando la siguiente entrada en el archivo de configuración “/etc/sysctl.conf“:

net.ipv4.ip_forward = 1

Iptables

El siguiente paso trata de modificar el firewall IPtables, de forma que se permita la comunicación entre las redes cableada e inalámbrica. Por ello, en primer lugar será necesario aplicar NAT:

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Seguidamente, se permite el acceso entre las redes:

# iptables -A FORWARD -i eth0 -o wlan0 -m state –state RELATED,ESTABLISHED -j ACCEPT 

# i ptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

Para que la configuración quede guardada aunque existan reinicios, aplicamos los cambios en el inicio:

# sh -c “iptables-save > /etc/iptables.ipv4.nat”

# iptables-restore < /etc/iptables.ipv4.nat

Configuración del servidor Web

En este punto se dispone del AP configurado propangado WiFi, y de la configuración DHCP necesaria para conectarse a la red. Ahora, se configurará el servidor Web para presentar el portal cautivo.

En primer lugar, si no lo esta ya, se instala Apache y se habilitan los módulos “rewrite” y “ssl”:

# apt install apache2

# a2enmod rewrite

# a2enmod ssl

Seguidamente, establecemos la siguiente configuración:

Con estos parámetros, se habilita la reescritura de URL mediante regex, indicando que para todas las peticiones sean redirigidas al “index” por defecto.

Igualmente, incluimos la configuración para el puerto 443. Se habilita en primer lugar el sitio:

# a2ensite default-ssl.conf

Y se configura con los mismos parámetros:

En este punto solo queda reiniciar el servidor Apache para aplicar la configuración:

# systemctl reload apache2

Definición del portal cautivo

Existen multitud de plantillas en Internet como base para crear un buen portal cautivo, como ejemplo las de Hack5. Aun así, para esta prueba de concepto, crearemos un pequeña página muy sencilla que solicitará usuario y contraseña para el acceso:

La web indicará que se introduzcan las credenciales de Sysbeards y estas quedarán registradas en un TXT del servidor. A esto también se incluirá un poco de CSS, siguiendo la siguiente estructura:

Resultados

Una vez que tenemos todo en marcha, vamos a probarlo!

En primer lugar, nos conectamos a la red WiFi que se está propagando:

Podemos comprobar que nos ha asignado un direccionamiento establecido dentro del rango del servidor DHCP:

Al introducir las credenciales, el portal indicará que las credenciales son incorrectas y no tomará acciones….

…Pero si nos fijamos en el TXT del servidor, veremos que el usuario y contraseña ha quedado registrado:

Conclusiones

Con todos los pasos anteriores hemos conseguido montar nuestro propio portal cautivo personalizado y sin herramientas prediseñadas a tal fin. Esto da mucha versatilidad y cantidad de opciones a la hora de probar el grado de seguridad de una red WiFi.

¿Qué os ha parecido?¿Os ha gustado la idea de montarlo todo desde cero? Dejadnos vuestros comentarios para seguir mejorando 😉

Ah, hola 👋
Un placer conocerte.

Veo que te gusta la tecnología, ¿quieres que te mandemos una newsletter semanal?.

Acepto la política de privacidad *

¡No enviamos spam!. yo también lo odio a muerte!.

Tags:
Artículo Anterior
Siguiente Artículo

2 Comentarios

  1. netfinder diciembre 17, 2023

    Muy buen tutorial. Más claro y mejor explicado, imposible.

    Responder
    1. Daniel Consentini diciembre 17, 2023

      Gracias a ti por el comentario Netfinder. Siempre se agradece!

      Responder

Deja un Comentario

Your email address will not be published. Required fields are marked *