Rogue Access Point(AP) con Raspberry(primera parte)

¿Que es un Rogue AP?

Un Rogue Ap, es un dispositivo que simula ser un punto de acceso wifi, pero que en realidad, no es mas que una especie de “honeypot” para capturar información de los pobres ilusos que se conecten.

¿Que necesitamos?

Existen dispositivos que se venden que ya vienen preparados para actuar de rogue ap, con muchas otras funciones excelentes como la famosa “piña” pero como nosotros somos de la cultura del DIY vamos a montarnos uno con una raspberry, por lo que necesitamos:

  • Raspberry Pi 2 o superior
  • WiFi USB with Antenna para la raspberry

Instalación y configuración AP Para empezar necesitamos instalar un software que nos permita configurar nuestra raspi como un AP y un servidor DNS

 apt-get install hostapd isc-dhcp-server

Ahora configuramos nuestro hostap, como lo que deseamos es crear una red abierta(para que todo el mundo pueda conectarse), lo vamos a hacer con una mínima configuración en nuestro fichero de configuración situado en /etc/hostapd/hostapd.conf

interface=wlan0
ssid=Free_Wifi
 hw_mode=g
 channel=6
 auth_algs=1
 wmm_enabled=0

Una vez editado el fichero y guardado, indicamos la ruta al mismo desde el fichero /etc/default/hostapd cambiando la linea

# DAEMON_CONF=""

por

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Instalacion y configuracion DHCP

Ahora que tenemos nuestro hostap configurado necesitamos configurar nuestro servidor dhcp para que los clientes que se conecten a nuestro ap y dispongan de IP, para ello editamos el fichero /etc/default/isc-dhcp-server(puede cambiar según la distribución que usemos) y lo editamos para indicarle cual es nuestro interfaz principal en mi caso eth0

INTERFACES="eth0"

Y la propia configuración de nuestro servidor DNS situado en /etc/dhcpd/dhcpd.conf que podría quedar de la siguiente manera:

ddns-update-style none;
option domain-name-servers 192.168.1.1,  8.8.8.8, 8.8.4.4;
default-lease-time 7200;
max-lease-time 21600;
authoritative;
log-facility local7;

# Rangos 
subnet 192.168.1.0 netmask 255.255.255.0 { 
      range 192.168.1.3 192.168.1.100; 
      option routers 192.168.1.1;
}

El rango IP y los servidores DNS utilizados, puedes cambiarlos y usar lo que te parezca oportuno, esta solo es una configuración de ejemplo.

Configuracion IP en interfaz

Necesitamos configurar la IP de nuestro interfaz wifi( wlan0) editando el fichero /etc/network/interfaces de la siguiente manera:

auto wlan0
iface wlan0 inet static
address 192.168.1.2
netmask 255.255.255.0

Después levantamos nuestro servicio DHCP

 /etc/init.d/isc-dhcp-server restart

y nuestro hostap

 hostapd hostapd.conf

Configuracion NAT

Necesitamos habilitar NAT para poder compartir la conexión a Internet y que los clientes que se conecten a nuestro AP puedan acceder a Internet, así que tenemos que lanzar los siguientes comandos:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -A FORWARD -i wlan0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Si lanzamos tcpdump podremos ver el trafico que se esta generando en nuestro AP

tcpdump -i wlan0

En el siguiente articulo, veremos como profesionalizar nuestro AP montando un portal cautivo en el mismo.

Happy Hacking ;)

puppetmaster Written by:

7 Comments

  1. foo bar
    foo bar
    julio 12
    Reply

    Muy bueno, gracias +1

  2. Camilo
    julio 18
    Reply

    Dónde se puede comprar o hablar con algún vendedor, gracias por a info

  3. supertau
    julio 18
    Reply

    Yo cuando he montado un AP he usado el servidor dhcp que viene en busybox, que es la mar de pequeño y puedes meterlo en un chroot por si hay alguna vulnerabilidad.

    Saludos !

  4. julio 19
    Reply

    Gracias por el aporte e info, esperando la segunda parte.

    Un saludo

  5. Revu
    febrero 9
    Reply

    Querido Puppet decirte que entiendo lo que pones, mi klingon mejora, pero es de mucho nivel para mi jeejeje

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax