Análisis de seguridad de la señal de 915 MHz del Flume Water Monitor

Fuentes: Flume Water Monitor 915 MHz Signal Security – It's Not Bad

El Flume Water Monitor es un dispositivo de consumo que se acopla al contador de agua del hogar y transmite datos de consumo casi en tiempo real a un puente conectado a la red Wi-Fi doméstica, que los sube a la nube para su consulta desde la aplicación Flume. El enlace entre el sensor del contador y el puente emplea una señal de radiofrecuencia en la banda de 915 MHz, cifrada y con salto de frecuencia en 50 canales dentro del rango 902,5–927 MHz, según la documentación de la FCC.

Un investigador logró romper ese cifrado tras varias semanas de trabajo parcial, apoyándose en la ingeniería inversa publicada por Steve Crosby. Mediante un LimeSDR Mini identificó señales de aproximadamente 1 ms con ancho de banda de 500 kHz, moduladas en 2-FSK a 200 kbps con blanqueo parcial. El payload de 16 bytes está cifrado con AES-128 en modo ECB; la clave de 128 bits se deriva de un valor de 8 bytes mediante un mapeado hardcoded, pero bytes del encabezado sin cifrar aportan 16 bits adicionales y una constante conocida reduce otros 4 bits, dejando un espacio efectivo de 44 bits. Un script en Python sin optimizar ejecutado en una GPU dedicada completó la búsqueda exhaustiva en alrededor de un día, con un coste inferior a 10 dólares en la nube.

El autor concluye que, para un sensor de consumo, la combinación de salto de frecuencia y cifrado efectivo de 44 bits ofrece un nivel de seguridad razonable, aunque conocer la clave AES permitiría generar mensajes falsificados y, en teoría, habilitar actualizaciones OTA maliciosas si el dispositivo las soportara, extremo que no investigó. Notificó sus hallazgos a Flume, cuyo CTO confirmó planes ya en marcha para reforzar la privacidad y la seguridad del producto y autorizó la publicación del análisis.