Kokeiluja ÀÀnen, piisirujen ja ihmisÀÀnen rajapinnoilla
đ Kannanotto: KĂ€yttĂ€jĂ€llĂ€ tulee olla oikeus hallita omia laitteitaan
Ălykotilaitteiden ongelma ei ole teknologia.
Ongelma on kontrolli.
YhĂ€ useampi kuluttajille myytĂ€vĂ€ laite on suunniteltu toimimaan vain valmistajan pilvipalvelun kautta. TĂ€mĂ€ ei ole tekninen pakko â se on liiketoimintamalli.
Malli, jossa:
- kÀyttÀjÀ ei hallitse omaa dataansa
- laitteen perustoiminnot riippuvat ulkopuolisista palvelimista
- laitteen kÀyttöikÀ mÀÀrÀytyy yrityksen elinkaaren ja tahtotilan mukaan
- paikallinen kÀyttö estetÀÀn tietoisesti
Tuya-ekosysteemi edustaa vahvasti tÀtÀ mallia.
TÀssÀ artikkelissa esitelty projekti on tietoinen vastalause tÀlle kehitykselle.
Kyse ei ole piratismista, kiertÀmisestÀ tai valmistajan vahingoittamisesta.
Kyse on eettisestÀ hakkeroinnista:
teknisestĂ€ osaamisesta, jolla palautetaan kĂ€yttĂ€jĂ€lle se mikĂ€ hĂ€nelle kuuluu â hallinnan tunne.
Ei voida hyvÀksyÀ lÀhtökohtia, joissa:
- valokatkaisimen painallus lÀhetetÀÀn Kiinassa sijaitsevaan pilveen
- Zigbee-painikkeen tila kulkee internetin kautta
- paikallinen automaatio estetÀÀn ohjelmallisesti
- kÀyttÀjÀltÀ kielletÀÀn pÀÀsy ostamansa laitteen rautaan
Kuluttajien on tÀysin perusteltua vaatia:
- paikallista ohjattavuutta
- lÀpinÀkyvÀÀ tiedonkulkua
- oman hallitsemansa verkon sisÀllÀ pysyvÀÀ dataa
- mahdollisuutta kÀyttÀÀ laitetta ilman valmistajan lupaa
TÀmÀ projekti:
- ei lisÀÀ laitteeseen haitallista koodia
- ei murra salauksia hyökkÀysmielessÀ
- ei vaaranna ulkopuolisia verkkoja
- ei riko lakia
Se tekee yhden asian:
- katkaisee tarpeettoman pilvikytköksen
TÀmÀ on eettistÀ hakkerointia siinÀ merkityksessÀ missÀ sana alun perin syntyi:
ymmÀrtÀmistÀ, dokumentointia ja vapautta.
”Jos laite toimii vain pilven kautta, kĂ€yttĂ€jĂ€ ei omista sitĂ€ â hĂ€n vuokraa sen.”
Miksi Tuya Cloud on tietoturvariski
Tuya-pohjaisissa laitteissa pilvi ei ole lisĂ€ominaisuus â se on hallinnan keskus.
Keskeiset riskit
Datan sijainti
Tuya kÀyttÀÀ globaalia infrastruktuuria, mukaan lukien Kiinassa sijaitsevia palvelimia.
KÀyttÀjÀllÀ ei ole todellista kuvaa siitÀ missÀ heidÀn dataansa kÀsitellÀÀn.
Metatieto on arvokkaampaa kuin sisÀltö
Aikaleimat, tapahtumatiheys ja laitekÀyttÀytyminen voivat paljastaa:
- milloin olet kotona
- milloin nukut
- milloin painat nappeja
- milloin avaat ovia
Pilviriippuvuus = kÀyttökatkoherkkyys
Jos palvelu:
- suljetaan
- myydÀÀn
- muutetaan maksulliseksi
laite voi muuttua hyödyttömÀksi.
Suljettu ekosysteemi
Valmistaja pÀÀttÀÀ:
- mitÀ integraatioita sallitaan
- mitÀ rajapintoja avataan
- milloin tuki pÀÀttyy
Paikallisen verkon ohittaminen
Usein laite ja ohjauslaite ovat samassa LAN-verkossa, mutta liikenne kierrÀtetÀÀn silti internetin kautta.
Paikallinen Zigbee + Home Assistant minimoi nÀmÀ riskit lÀhes kokonaan.
Eettinen hakkerointi: Case Nedis Zigbee WiFi Gateway (WIFIZB10WT)
Nedis Zigbee WiFi Gateway (WIFIZB10WT) voidaan muuttaa tÀysin paikallisesti toimivaksi Zigbee-koordinaattoriksi ilman Tuya-pilveÀ kÀyttÀmÀllÀ:
- OpenBeken (WiFi-puolella)
- EFR32MG13 (TYZS3) Zigbee-puolella
- ZHA (Zigbee Home Automation) Home Assistantissa
yhteytenÀ EZSP TCP-serial.
Ei USB-donglea.
Lopputulos
- tÀysin offline-toimiva Zigbee-verkko
- yksi USB-palikka vÀhemmÀn palvelimessa
- tÀysi kontrolli omasta verkosta ja datasta
Laitteisto lyhyesti
Gateway
Nedis WIFIZB10WT
WiFi MCU
RTL8710A (OpenBeken)
Zigbee MCU
EFR32MG13P732 (TYZS3-moduuli)
LiitÀntÀ
UART (TX / RX / GND)
Debug
SWD (J-Link)
đ Arkkitehtuuri
Zigbee Device
â
EFR32MG13 (EZSP NCP firmware)
â UART
RTL8710A (OpenBeken uarttcp)
â TCP 8888
Home Assistant (ZHA)
ZHA nÀkee gatewayn sarjaporttina TCP:n yli:
tcp://<gateway_ip>:8888
âïž OpenBeken autoexec.bat
TÀmÀ tiedosto asennetaan OpenBeken WebUI:n kautta ja varmistaa ettÀ UART-TCP-silta kÀynnistyy automaattisesti jokaisella bootilla.
startdriver uarttcp 115200 512 1 0
SetChannelLabel 1 "Bridge Connection"
SetChannelVisible 1 0
SetChannelType 1 OpenClosed_Inv
MitÀ tÀmÀ tekee
- kĂ€ynnistÀÀ UART â TCP sillan
- avaa portin 8888
- kÀyttÀÀ EZSP:lle oikeaa baudratea 115200
- ei kÀytÀ UART flow controlia
- pitÀÀ WebUI:n siistinÀ
â ïž Yleinen sudenkuoppa: swflow â XON/XOFF
Elektroda-foorumin ohjeissa mainitaan:
âreplace last symbol with 0 if you flashed swflow firmwareâ
TÀmÀ aiheuttaa paljon sekaannusta.
â TĂ€rkeĂ€ tĂ€smennys
Vaikka EFR32-firmwaren nimi sisÀltÀÀ sanan swflow, se:
- EI tarkoita UART-tason software flow controlia
- EI kÀytÀ XON/XOFF-merkkejÀ
- EI kÀytÀ RTS/CTS-linjoja
EZSP-protokolla kÀyttÀÀ omaa sisÀistÀ puskurinhallintaansa.
â Oikea asetus OpenBekenissĂ€
startdriver uarttcp 115200 512 1 0
| Arvo | Merkitys |
|---|---|
| 0 | Ei flow controlia (oikea) |
| 1 | XON/XOFF (vÀÀrÀ EZSP:lle) |
Jos asetat arvon 1, EZSP jumittuu eikÀ ZHA saa vastausta.
đ ZHA-asetukset Home Assistantissa
Kun lisÀÀt Zigbee Home Automation -integraation:
Radio type
EZSP
Port speed
115200
â ïž Vaikka kĂ€ytössĂ€ on TCP, ZHA vaatii baudrate-kentĂ€n â arvoa ei oikeasti kĂ€ytetĂ€.
đ„ Lopputulos
- ZHA yhdistyy gatewayhin
- Zigbee-verkko kÀynnistyy paikallisesti
- laitteet pariutuvat normaalisti
- ei Tuya-pilveÀ
- ei USB-donglea
- ei vendor-lukitusta
EnsimmÀinen testilaite:
Nedis Zigbee Smart Button ZBWS10WT â pariutui ongelmitta â
đ Yhteenveto
TÀmÀ projekti osoittaa, ettÀ myös suljetut, pilvikeskeiset Zigbee-gatewayt voidaan:
- avata
- muuttaa tÀysin paikallisiksi
- integroida avoimeen Àlykotiekosysteemiin
ja tehdÀ se hallitusti, dokumentoidusti ja lÀpinÀkyvÀsti.
LĂ€hteet ja viitteet
Mozilla Foundation â Privacy Not Included: Tuya Smart
https://foundation.mozilla.org/en/privacynotincluded/tuya-smart/
The Markup â Does Your Smart Device Send Data to China?
https://themarkup.org/ask-the-markup/2021/02/10/does-your-smart-device-send-data-to-china
Electronic Frontier Foundation (EFF) â Internet of Things and Surveillance
https://www.eff.org/deeplinks/2020/12/internet-things-and-surveillance
NIST â Considerations for Managing IoT Cybersecurity and Privacy Risks
https://www.nist.gov/publications/considerations-managing-internet-things-cybersecurity-and-privacy-risks
Home Assistant â Local Control Philosophy
https://www.home-assistant.io/docs/
Elektroda â TYZS3 Zigbee NCP Conversion Guide
https://www.elektroda.com/news/news4130211.html