Cómo detectar intrusos en tu red wifi

Más allá de las medidas de seguridad que implementemos en nuestras redes WiFi, estas son víctimas potenciales a ser invadidas por conexiones indeseadas que no solo consumirán nuestro ancho de banda, sino que también podrán acceder a nuestros archivos, por eso es mejor estar preparados ante este eventualidad con un script que monitoree nuestra red WiFi.


Hace un tiempo vimos cómo utilizar una herramienta llamada nmap para descubrir los puertos abiertos de una PC, laptop, teléfono o inclusive un router apenas especificando su dirección IP.

Esta misma herramienta permite, además, detectar las IPs de las PCs, laptops, teléfonos, routers o cualquier otra cosa que se haya conectado a tu red. Esto puede ser de gran utilidad, como es obvio, para detectar intrusos en tu red wifi.

Cómo detectar a los intrusos

1.- Instalar nmap. En Ubuntu y derivados, esto sería así:

sudo apt-get install nmap

Aquellos que usen otras distros encontrarán nmap en los repositorios oficiales, así que su instalación es bien sencilla. En el caso de Arch Linux, nmap se encuentra en los repositorios AUR.

2.- Ejecutar nmap

nmap -sP 192.168.100.1/24

…donde 192.168.100.1 es el IP de mi router.

Con este comando, le pedimos al nmap que nos muestre sólo (-sP) las IPs de los hosts conectados en la red, cabe mencionar que el .1 del final no importa ya que al mandarle la mascara de red /24 explorara 255-2=253 hosts posibles.

La salida va a ser algo parecido a esto:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-08-23 01:27 ART
Nmap scan report for 192.168.0.1
Host is up (0.0019s latency).
Nmap scan report for 192.168.0.102
Host is up (0.00037s latency).
Nmap done: 256 IP addresses (2 hosts up) scanned in 2.78 seconds

En mi caso, sólo se encuentran activos el router y mi laptop.

Si al hacer esto viésemos un host, con su número de IP correspondiente, que no reconocemos, es probable que estén utilizando nuestra red wifi sin nuestra autorización.

Script para que nos alerte cuando alguien se conecte

Franklin Aliaga tuvo la amabilidad de crear un script que automatiza la utilización de nmap para escanear tu red en busca de intrusos.

Los pasos a seguir son:

1.- Instalar las dependencias necesarias:

sudo apt-get install libnotify-bin nmap

2.- Crear el script.

sudo gedit alertared

y luego, pegamos el siguiente texto dentro del archivo recién creado:

#!/bin/bash
#script creado por: franklin aliaga
#si no tienes nmap digita sudo apt-get install nmap
#con este comnado de nmap nos muestra los hosts conectados
#y los guarda en un archivo *.txt

#script mejorado y actualizado por: microstudi (lector de tuxapuntes)

# Modifica esta linea a tu gusto si deseas guardar los temporales en otra ruta.

ARCHIVOS="$HOME/bin/hosts"

/usr/bin/nmap -sP 192.168.2.1/24 -oG $ARCHIVOS/hosts_ip.txt

#aqui cortamos el formato obtenido anteriormente de archivo para solo obtener las ip’s
#y mandarlo a otro archivo *.txt
cat $ARCHIVOS/hosts_ip.txt | grep Host | cut -c 7-20 | tr -d "()" > $ARCHIVOS/host_ip1.txt

#aqui capturamos el numero de lineas que tiene nuestro archivo
#en este caso la cantidad de ip’s que hay en el archivo
contador=$(wc -l $ARCHIVOS/host_ip1.txt | cut -c 1-2)

#aqui obtenemos la nuestra ip
ip=$(/sbin/ifconfig eth0 | grep "inet addr" | awk ‘{print $2}’ | cut -c 6-)
echo "Mi ip: $ip"
total=$(expr $contador – 1)

var=0

while [ $var -le $total ]; do
let var=$var+1
#capturamos la ip por linea
linea=$(cat $ARCHIVOS/host_ip1.txt | sed -n "$var p")
if [ $linea != "192.168.2.1" ]; then
if [ $linea != $ip ]; then
/usr/bin/notify-send "Conectado $linea"
#Para enterar-se por la consola también:
echo "Conectado $linea"
fi
fi
done

3.- Le damos permisos de ejecución:

sudo chmod +x alertared

4.- Finalmente, agregamos el script a crontab para que se ejecute cada tanto:

crontab -e

Y añadimos la linea:

*/3 * * * * /home/tu nombre de usuario/alertared

Aquellos que estén buscando una alternativa más completa para la detección de intrusos deberían probar AutoScan Network.

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   HacKan & CuBa co. dijo

    Considerando que uno tenga una red wifi lo suficientemente desprotegida para que haya intrusos… 😛
    Pero sí, la idea esta buena, me gusto el script 🙂

    Saludos!

  2.   HacKan & CuBa co. dijo

    Considerando que uno tenga una red wifi lo suficientemente desprotegida para que haya intrusos… 😛
    Pero sí, la idea esta buena, me gusto el script 🙂

    Saludos!

  3.   kmlreverser dijo

    Cuando robes wifi ponte estos 2 comandos 🙂
    arptables -P INPUT DROP
    arptables -P OUTPUT ACCEPT

    ya pueden venir de la CIA no te cazararan

    Nota ant: El único sitio donde sales es en la tabla NAT del router por lo demas 0 y pocos routers COMERCIALES hacen un dump de la tabla NAT.

    Y aquí esta el cortafuegos ARP http://pastebin.com/SNLu0kCK para tenerlo como daemon 🙂 Y no olvidarte los comandos 🙂

    1.    lion dijo

      He tirado las lineas que mencionas, pero creo que causan un problema de conexión al momento de ejecutarlas. El internet deja de funcionar en mi pc ¿a que puede deberse?

  4.   Rafael Monroy dijo

    excelente post !!! muchas gracias.. #cr

  5.   Usemos Linux dijo

    Buen aporte! Gracias x compartirlo!
    Saludos! Pablo.

  6.   Usemos Linux dijo

    Buscá contrab en el blog. Hay varios artículos en los que se detalla su uso. 🙂

    Saludos! Pablo.

  7.   Gaspar Fernández dijo

    ¡¡ Interesante !! Lo compartiré en mi blog!

  8.   Osegueda dijo

    dicho script me produce un eror por terminal «se esperaba un operador unario» en la line de la estructura while

  9.   Osegueda dijo

    dice ser un error de sintaxis ¿?…

  10.   Fr3dyC dijo

    Excelnte aporte!

    Gracias por compartir.

    Saludos!

  11.   Invitado dijo

    Alguien que me pueda explicar la linea a agregar en crontab… Se los agradeceria…

  12.   Usemos Linux dijo

    Ok. Gracias krafty. En un rato lo arreglo. Saludos! Pablo.
    El 01/09/2011 12:13, «Disqus» <>
    escribió:

  13.   krafty dijo

    Hay un problema en el script, por lo menos yo lo tuve.

    El problema esta en las comillas:

    no se las reconoce como un carácter valido:

    Salida: carácter ‘�’ inválido en la expresión

    Lo que hice fue reemplazar dichas comillas por:

    «

    A simple vista parecen iguales pero no lo son, entonces:

    a ( ” ) lo reemplazo con ( » )

    y ahí salio andando en scritp…

    Saludos y buena data como siempre.

  14.   Jose Antonio Salgueiro dijo

    Gracias, ahora solo falta que alguien «experto» construya un paquete deb (y/o rpm).

  15.   Moy Kusanagi dijo

    Gracias! El mejor blog que conozco de Linux

  16.   Usemos Linux dijo

    Gracias! Un fuerte abrazo! Pablo.

  17.   kmlreverser dijo

    Fácil me pongo estos comandos en mi terminal y vamos. Si me detectas te compro una casa. Es imposible detectarme ya que ip trabaja sobre arp y cada vez que te conectas a un pc se realiza una petición de que dirrecion arp (dirrecion mac o dirrecion fisica) tiene la ip Xxx.xxx.xxx.xxx 🙂
    Te dejo el comando por si alguien esta sacando provecho a la red wifi del vecino 🙂

    arptables -P INPUT DROP
    arptables -P OUTPUT ACCEPT

    Por cierto tambien bloquea los MIMT ataques Main in the midle 🙂

  18.   Trinidad_mtv dijo

    MUY INTERESANTE AMIGOO.,.,PERO DEVES TENR EN CUENTA K LINUX.,SON LA NETHA.,Y POR MAS K UNO KIERA.,BUELBEN A HACKEAR LA RED.,.,POR LA POKA FACTIBILIDAD DE LOS ROUTERS.,K ESTANDEN EL MERCADO.,.,Y GRAX ME AYUDO.,MUCHO.,MUY BUEN APORTE

  19.   lied dijo

    También se puede hacer de esta manera nmap -sP ip de la red-255

    Atención al -255 pegado en la ip de la red.

    Saludos

  20.   Jeffry Roldán dijo

    También con arp-scan pueden ver otros números de ip y mac que estén conectados a su red.

  21.   Usemos Linux dijo

    Buen dato! Gracias x compartirlo.
    Saludos! Pablo.

  22.   Matias dijo

    Por fin puede instalar esta app, no lo podia hacer en debian por el quilombo de dependecias. Con manjaro me vino al Pelo.
    Buen aporte

  23.   mat1986 dijo

    Bastante útil nmap, nada más que decir 😀

    Gracias 🙂

  24.   Arturo Olmedo dijo

    Que tal Amigo.
    Me parece excelente el artículo.
    Cuando lo estuve probando, solo no pude con la ultima instrucción.(Soy Nuevo en Ubuntu).

    crontab -e
    no crontab for jaor – using an empty one

    Select an editor. To change later, run ‘select-editor’.
    1. /bin/ed
    2. /bin/nano <—- easiest
    3. /usr/bin/vim.tiny

    Choose 1-3 [2]: 1
    888

    Y ahí ya no supe que hacer

    Ojalá y puedas ayudarme.

    Saludos