Flume Water Monitor 915 MHz Security Is Pretty Good
waveformsecurity.com
waveformsecurity.com
I've been working on an open source solution on and off for a number of years called http://y-drip.com. It uses Wi-Fi so battery life is only a few months and range is limited. My next design is probably going to use LoRa, but this complicates things a lot because now I have two devices (bridge and sensor) that need to be paired, support over-the-air updates, etc.
What's the best way to have them share keys without adding expensive hardware like Bluetooth or NFC. The sensor also needs to be waterproof so there's no exposed ports. Increasing from 44 bits to 128 would help, but if the key generation is done over the air it can be sniffed right?
why not Zigbee or Thread?
Read: There will be a firmware update that further "secures" the device from owners who would like to use it without the "cloud" and the "app".
its a nice experiment, but i wouldnt say the security is good... good security would havr everything documented with sourcecode,user generated keys, and a opensource server/client, whose code can be examined fully
To Flume's credit, it required me to dump the firmware from the bridge device's ESP8266 in order to extract my key. I didn't consider an approach like this article took, given I have direct access to the HW and there's no flash protection on the 8266.
https://github.com/tronikos/esphome-magnetometer-water-gas-m...
But I always wanted to finish pulling flume data to home assistant, without the cloud.
My setup is a logic analyzer tap on the SPI bus between 8266 and the RFM69 on the bridge device to log raw traffic, and my secondary RX (ESP32 + RFM69) for over-the-air traffic.
Also, I have a gas meter sensor based on your work half-built on my workbench. I plan to set that up once I finish my Flume distraction. Great work, thank you!
I'd done exactly the same, though my efforts were pre-Claude. If you want my logs/data, username at gmail.
The sensor has an Atmel SAMD part which I assume has the security bit set. I didn't need to dump that firmware directly as it exists within the gateway flash.
it is full-on broke on my phone, showing only pictures and no text
A result of "the security is actually pretty good" is arguably just as valuable as finding a critical flaw. It helps distinguish between systems that are merely proprietary and those that were designed with a reasonable threat model in mind.
I'd be interested to know where the remaining weaknesses lie. Are they primarily in the RF protocol itself, key management, device provisioning, or the surrounding cloud infrastructure? In many IoT systems, the radio protocol ends up being the strongest component while the weakest link is somewhere else entirely.
There are no performance implications of using a proper 128 key because they are doing AES anyway. If they were resource constrained and choose a variant of TEA encryption due to constraints, it would be understandable, but no, the encryption is implemented in hardware.
There also seems there is no message authentication, a rookie mistake.
The attack vector is: an adversary can get close to your water meter and after brute forcing the key, wirelessly read the numbers they could have just physically looked at the water meter to read anyway.
Meanwhile the device owner can decrypt the signal and locally get access to their own data without being tied to the cloud or a proprietary vendor app. I think that's a win.
Local data access is a win, I agree
Hey, that's 4 bits stronger encryption than DVDs, and it's only like 30 years later to get those additional 4 bits
I feel like there was some sort of Heated Discussion over whether or not the OTA traffic should be encrypted to enhance shareholder value or not, and someone took the chaotic good route.
It was summertime and the gas meters were boring, but the water meters were pretty chatty.
44 bits is a lot more than 0.
I had a slightly different read.. their CTO replied directly and in an affirmative manner. It's amazing how the human touch helps align and build understanding. How many of these have you read where it's just a scathing product teardown devoid of any appreciation for any work that's otherwise been put in.