[h]Procedimiento[/h]
Voy a explicar como activar y configurar el servicio WPS en un router con OpenWrt. En mi caso lo he realizado a un amper ASL-26555.
Para realizar el proceso necesitamos abrir un terminal SSH en el router, por ejemplo mediante Putty:
http://s26.postimg.org/3pdi5z9yx/Putty.png
Para los que no estén acostumbrados, recordarles que debemos logearmos con el mismo nombre de usuario y password que utilicemos normalmente para acceder al router. Por defecto el usuario es root.
http://s26.postimg.org/y5jf43vi1/Loggin.png
Lo primero que hay que hacer es reemplazar el paquete wpad-mini instalado por defecto, por el hostpad-utils, el cual contiene el soporte para el protocolo WPS:
opkg update
opkg remove wpad-mini
opkg install wpad hostapd-utils
Una vez hecho esto debemos parametrizar una serie de variables según nuestros intereses.
Lo primero que deberemos hacer, antes de empezar a configurar el servicio WPS, es identificar el nombre del interface wireless de nuestro router. Mediante el comando:
uci show wireless
http://s26.postimg.org/a4cj2ngop/show_wireless.png
En mi caso se trata de wifi-iface[0].
Una vez que conocemos dicha información y de forma opcional podemos configurar los campos referentes al nombre del dispositivo y fabricante, con el que nuestro router se identificará cuando un dispositivo le demande dicha información. Esta información no tiene por que ser configurada sino queremos, en cuyo no se mostrarán esos campos en los mensajes de identificación enviados por el router.
uci set wireless.@wifi-iface[0].wps_device_name="OpenWRT AP"
uci set wireless.@wifi-iface[0].wps_manufacturer="openwrt.org"
Si queremos que las conexiones WPS se establezcan por medio del método PushButton, es decir, al pulsar el botón de asociación del router debemos configurar la variable:
uci set wireless.@wifi-iface[0].wps_pushbutton=1
Si queremos conectarnos mediante un PIN de 8 dígitos configuramos las siguientes dos variables:
uci set wireless.@wifi-iface[0].wps_label=1
uci set wireless.@wifi-iface[0].wps_pin= 12345678 (El pin que cada uno desee)
Vale la pena mencionar que dicho PIN, no tiene porque cumplir la regla de generación de pines establecida por la norma WPS, la cual especifica que el último dígito de la serie, corresponde al checksum de los primeros 7.
Sólo falta guardar los cambios y reiniciar el router:
Uci commit
Reboot
[h]Motivación[/h]
Aunque suene un poco extraño que alguien quiera configurar el servicio WPS, que ha demostrado ser inseguro, en un firmware que por ese motivo no lo trae instalado por defecto; En mi caso tenia mucho interés activarlo, pues este router lo emplearé para realizar pruebas de auditoría.
Recordad que el protocolo WPS puede ser atacado mediante herramientas como reaver, bully y de forma offline mediante el procedimiento PixieDust.
Refencias:
https://wiki.openwrt.org/doc/uci/wireless
https://gist.github.com/alghanmi/4de45337ca517ebe3a56
Un saludo.