915 792 426 - 689 888 537

Blog

ACTUALIDAD
wifi-jammer
30 Jun 2017

Crea tu WiFi Jammer por 5€ y con Arduino – Parte 1

//
Comentarios0
/

Crea tu WiFi Jammer por 5€ y con Arduino – Parte 1

El otro día leímos un tutorial que explicaba como crear tu WiFi Jammer de una forma barata y con Arduino. En su blog explicaba como flashear el BIN dentro del NodeMCU ESP8266, pero nosotros vamos a explicaros como crear tu WiFi Jammer por 5€ y con Arduino, para compilar el código y si queréis hacer alguna modificación y sabéis programar lo podáis hacer. tinxi® Junta NodeMCU Lua Internet WIFI Desarrollo Basado en ESP8266 ESP 12E CP2102

Pero, ¿que es el Jamming?

Primero vale la pena destacar que estos dispositivos son conocidos como jammers, que en palabras muy sencillas son generadores de señales que van a interferir una comunicación inalámbrica. Existen dos tipos de ataques de interferencia o jamming que pueden ser utilizados para dificultar la comunicación de datos desde un receptor. El primer tipo es el denominado spot, el cual va direccionado a interferir una frecuencia específica, mientras que cuando se trata de afectar varios canales simultáneamente estamos frente a una interferencia del tipo barrage. En ambos casos, se necesita encontrar la frecuencia adecuada para que el ataque sea efectivo y con la potencia suficiente para suplantar la señal original. Además hay que resaltar que quienes son víctimas de estos ataques son los clientes que no se pueden conectar a la red, en cualquier caso el AP seguirá operando normalmente y solamente podrán conectarse con algo de suerte aquellos que estén lo suficientemente cerca del dispositivo emisor.

Es interesante conocer que es el jamming, pero en realidad este tipo de dispositivos, aunque sean conocidos como jammers esto es incorrecto, ya que su principal ataque es el que conocemos como deauth, por lo que lo correcto sería conocer a este dispositivo como wifi deauther, ya que no realiza ningún tipo de interferencia en la señal wifi.

Características

Para empezar, el NodeMCU es un kit de desarrollo open source para proyectos que necesitan conectividad WiFi. Las características del ESP8266 ESP-12 son las siguientes:

  • CPU RISC de 32-bit: Tensilica Xtensa LX106 a un reloj de 80 MHz
  • RAM de instrucción de 64 KB, RAM de datos de 96 KB
  • Capacidad de memoria externa flash QSPI – 512 KB a 4 MB (puede soportar hasta 16 MB)
  • IEEE 802.11 b/g/n Wi-Fi
  • Tiene integrados: TR switch, balun, LNA, amplificador de potencia de RF y una red de adaptación de impedancias
  • Soporte de autenticación WEP y WPA/WPA2
  • 16 pines GPIO (Entradas/Salidas de propósito general)
  • Interfaz I²S con DMA (comparte pines con GPIO)
  • Pines dedicados a UART, mas una UART únicamente para transmisión que puede habilitarse a través del pin GPIO2
  • 1 conversor ADC de 10-bit

 

Compra

Nosotros usamos esta placa que puedes encontrar en Amazon. La puedes encontrar mas barata en otras webs sin problema, decidimos usar esta por el tiempo de envío (1 día).  

Ventajas de compilar el código a mano

Gracias a esto y si tenemos conocimientos de programación podremos modificar este proyecto a nuestro gusto. Cambiar opciones, valores por defecto, etc. Es un proceso mas complejo que directamente bajarnos el BIN de GitHub y quemarlo, pero si os interesa la programación os merece la pena seguir este pequeño manual.

Instalación

Lo único que necesitamos es un ordenador y un ESP8266. Tenemos dos opciones, flashear el BIN en la memoria o compilar el código y flashearlo, que es lo que haremos nosotros.

Compilando el código con Arduino

  1. Descargamos el código fuente del proyecto desde aquí: https://github.com/spacehuhn/esp8266_deauther
  2. Instalamos Arduino en nuestro equipo
  3. Añadimos http://arduino.esp8266.com/stable/package_esp8266com_index.json dentro del Gestor de URLs Adicionales de Tarjetas (Archivo>Preferencias)

preferencias-instalacion-arduino

  1. Nos vamos a Herramientas > Placas > Gestor de Tarjetas  y tecleamos en el buscador esp8266 . Es importante que seleccionemos la versión 2.0.0

  1. Una vez seleccionado pinchamos en Instalar
  2. Nos vamos a Archivo > Preferencias de nuevo y pinchamos sobre el path del directorio de preferencias para ir allí con el explorador

ajustes-arduino

  1. Una vez dentro de la carpeta nos vamos a packages > esp8266 > hardware > esp8266 > 2.0.0 > tools > sdk > include y abrimos el fichero user_interface.hen algún editor de texto, en mi caso con Notepad++ configuracion-arduino
  2. Una vez abierto añadimos las siguientes lineas al final del fichero y antes del #endif

typedef void (*freedom_outside_cb_t)(uint8 status); int wifi_register_send_pkt_freedom_cb(freedom_outside_cb_t cb); void wifi_unregister_send_pkt_freedom_cb(void); int wifi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq);

programacion-arduino

  1. Ahora debemos ir a la carpeta del proyecto que nos descargamos de GitHub denominada SDK_Fix y copiamos los ficheros ESP8266Wi-Fi.cppESP8266Wi-Fi.h

configuracion-arduino

  1. Ambos archivos los copiamos en packages > esp8266 > hardware > esp8266 > 2.0.0 > libraries > ESP8266WiFi > src

configuracion-arduino

  1. Una vez hecho esto ya podemos abrir el proyecto de Arduino esp8266_deauther > esp8266_deauther.ino

archivo-arduino

archivo-arduino

  1. Al abrir el proyecto debemos asegurarnos que dentro de Herramientas > Placaesta seleccionada la  Generic ESP8266 Module
  2. Antes de subir nada a nuestra placa debemos configurar la frecuencia de flasheo y el tamaño de la memoria flash. En el caso de la placa que yo compré la memoria de flasheo es de 1MB y la frecuencia de 80MHz. Esto lo cambiamos en Herramientas> Placa > Flash Frequency y en Herramientas > Placa -> Flash Size

configuracion-arduino

  1. Hora de conectar nuestra placa, cogemos cualquier usb y conectamos nuestra placa.
  2. Compilamos el programa para comprobar que todo esta OK. Esto lo hacemos desde el menú de Programa > Verificar/Compilar. Si todo es correcto nos aparecerá este mensaje en la parte inferior de Arduino.

compilar-arduino

  1. Vamos a generar el archivo BIN para poder flashearlo en nuestra placa, para ello nos dirigimos a Programa > Exportar Binarios Compilados. Al realizar esta operación en la carpeta raíz del proyecto nos encontraremos con un BIN que en la siguiente sección flashearemos en nuestra placa. exportar-arduino

Si te resulta interesante nuestro post “Crea tu WiFi Jammer por 5€ y con Arduino“, y crees que quizás lo estén usando contra ti, puedes consultar nuestros servicios  para protegerte o informarte en ciberseguridad en nuestro blog.

Flasheado

Para poder “quemar” el BIN en nuestra placa vamos a utilizar un programa externo llamado ESP8266Flasher que podemos descargar desde aquí Una vez descargado debemos configurar algunos parámetros acordes a nuestra placa. Dentro de la pestaña Advanced configuramos el Flash Size a 1M y el Flash Speed a 80MHz

flasheado-arduino

En la pestaña de Config tenemos que pinchar sobre la rueda y seleccionar la imagen BIN que hemos generado anteriormente

Con esto hecho, nos vamos a la pestaña Operation y pinchamos sobre Flash y comenzará el proceso, una vez completado nos aparecerá un circulo verde en la parte inferior.

Ya tenemos nuestro WiFi Jammer! Así se crea tu WiFi Jammer por 5€ y con Arduino. Desconectamos la placa del USB.

Como el post se ha hecho bastante largo por el proceso de compilación vamos a dejar el tutorial de uso de nuestra herramienta para el siguiente post dedicado a esta herramienta, además estamos preparando una traducción al español de la interfaz de uso que seguro que los que no os lleváis bien con el inglés os viene bien. Si te gustó este post “Crea tu WiFi Jammer por 5€ y con Arduino” te animamos a que lo compartas con aquellos que creas que le pueden interesar tanto como a nosotros!