File this one under "not everything needs a computer in it". Finnish security house F-Secure today revealed a vulnerability in the KeyWe Smart Lock that could let a sticky-fingered miscreant easily bypass it.
To add insult to injury, the device's firmware cannot be upgraded either locally or remotely. This means the only way to conclusively remediate this problem is to rip the damned things from your door and replace them with a bog-standard lock.
The KeyWe Smart Lock is primarily used in private dwellings, and retails for circa $155 on Amazon. It allows users to unlock their doors through a traditional metal key, via a mobile app, or with Amazon Alexa.
Its Achilles' heel is what F-Secure describes as "improperly designed communications protocols". These allowed the firm to intercept the secret passphrase as it transmitted from the smartphone to the lock, using just a $10 BLE sniffer and Wireshark.
The KeyWe Smart Lock uses AES-128 to communicate with the mobile app. However, the communication channel uses only two factors to generate that encrypted channel: a common key and a separate key calculation process. Both of these are trivial to overcome.
Speaking to The Register, F-Secure's Krzysztof Marciniak said: "The KeyWe Smart Lock uses BlueTooth Low Energy, which is based on the concept of advertisements. These contain information about device capabilities, the device name, and the device [MAC] address. It's from this address the common key is generated."
F-Secure also figured out how to yank the key-calculation process from the mobile application, rendering the second factor redundant.
With the KeyWe's encryption rendered null and void, an attacker would merely have to identify a property using the lock, then wait for someone to come and unlock the door. They would then be able to intercept the passcode in transit and use it to break into the property.
We have asked KeyWe for comment.
Arguably, the biggest issue here isn't that the KeyWe had a glaring design flaw, but rather that it's impossible to remediate. As with any tech product, one can assume that eventually someone will identify a security issue that needs fixing. Having no means to actually do so is... well... rather bad. ®