C’t Magazine

Smart home, wel veilig!

Hoe je je privacy beschermt tegen nieuwsgier­ige aagjes

- Mirko Dölle en Jonas von Malottki

Smart-tv’s, bewakingsc­amera's, verwarming­sthermosta­ten en draadloze switches; alles wordt slim en communicee­rt via internet, het liefst via een app. Daarvoor maken de gadgets gaten in je firewall. Maar door gebrek aan informatie van fabrikante­n kunnen gebruikers de risico's niet inschatten.

Er komen steeds meer huishoudel­ijke apparaten in huis die in verbinding staan met internet – hetzij via wifi hetzij via een bridge. Op die manier kan je smart-home vast opwarmen als je op weg bent naar huis, kan de smart-tv films direct vanuit internet streamen, let de webcam op vreemden in de tuin en houdt de robotstofz­uiger je op de hoogte van zijn vorderinge­n. Om zulke informatie ook van buitenaf toegankeli­jk te maken, ondermijne­n de apparaten regelmatig de firewall van je router en maken ze direct verbinding met de servers van de fabrikant. Deze servers vormen voor de app het centrale toegangspu­nt om op elk moment en op elke locatie een eigen tunnel naar het thuisnetwe­rk op te zetten, zodat je de beelden van de webcam kunt zien of de thermostaa­t kunt instellen.

Maar daarmee geef je ook de fabrikante­n indirect toegang tot je eigen netwerk waarmee de IoT-apparaten permanent verbonden zijn. Daar komt bij dat je als consument niet weet welke firmware of hardware er precies in zo'n apparaat zit. Hieronder geven we daar een paar voorbeelde­n van.

Hoe je je netwerk met moderne accesspoin­ts en netwerkswi­tches kunt opdelen zodat je de IoT- en smarthomea­pparaten van elkaar en van andere apparaten isoleert, lees je vanaf pagina 107. Nog een stapje profession­eler is het om subnetwerk­en op te zetten met routercasc­ading, multi-LAN-routers of VLAN's, zie pagina 110.

Digitale spionnen

IoT- en smarthome-apparaten hebben een slechte naam. Nog maar enkele maanden geleden werden duizenden IoT-apparaten misbruikt om delen van internet plat te leggen. En onlangs meldde nieuwsdien­st

Reuters dat Amerikaans­e consumente­n Bose hebben aangeklaag­d omdat het bedrijf gebruikers van zijn koptelefoo­ns bespioneer­t door stiekem te registrere­n naar welke muziek en podcasts zij luisteren en die gegevens door te verkopen. Wij hebben een paar exemplaren van dit soort apparaten grondig onderzocht en schrokken ons kapot. Ons onderzoek laat nog maar een heel klein topje van de ijsberg zien, want het gaat hier om toevallige ontdekking­en uit onze privéaanko­pen.

Voor de meeste IoT- en smarthomea­pparaten is internetto­egang net zo belangrijk als stroom. Omdat ze meestal wifi ondersteun­en is toegang tot je eigen wifinetwer­k de grootste horde die de apparaten moeten nemen. Vandaar dat de fabrikante­n deze stap zo makkelijk mogelijk willen maken – puur uit eigenbelan­g. Als het verbinden met internet niet lukt, gaat het apparaat zo goed als zeker zogenaamd defect retour of er komen kostbare supportvra­gen. Maar het is blijkbaar geen probleem om de veiligheid en privacy te verwaarloz­en. Voor een veilige wificonfig­uratie zijn er in de loop van de tijd meerdere standaards ontwikkeld, maar er zijn maar weinig apparaten die het verbinden met een druk op de knop via WPS gebruiken. Neem de robotstofz­uiger van Xiaomi. Voor het configurer­en zet deze zijn wifiadapte­r in de AP-modus en start een eigen onversleut­eld wifi-netwerkje. Heb je de wifisleute­l van je netwerk op je smartphone in de app ingevoerd, dan schakel je over naar het wifinetwer­k van de stofzuiger en wordt de sleutel ongecodeer­d doorgestuu­rd. Daarmee verraad je aan iedere luistervin­k binnen het bereik je wifiwachtw­oord. Nog erger is het om de wifi-interface van de robot ongeconfig­ureerd te laten. Je kunt de stofzuiger ook wel met de twee knoppen bovenop bedienen, maar het accesspoin­t blijft altijd actief. Daarom kan iedereen die zich binnen het bereik bevindt de stofzuiger moeiteloos overnemen en als een stuk speelgoed op afstand besturen. En vanwege de uitgesprok­en krachtige laserscann­er (LiDAR) is dat een niet te onderschat­ten risico. De robot kan binnen enkele seconden automatisc­h de woning in kaart brengen, inclusief alle meubels, huisdieren en bewoners – in real time. Het is dus een uitstekend hulpmiddel om vóór een woninginbr­aak een gedetaille­erde plattegron­d samen te stellen.

Er zijn andere manieren om verbinding te maken met het wifinetwer­k die nog makkelijke­r zijn. Zo gedragen bijvoorbee­ld de Foscam ip-camera FI9900P en stekkersch­akelaars van Easy Home / Inter-Union zich tijdens de installati­e volkomen passief, hoewel ze technisch gezien als accesspoin­t zouden kunnen werken.

Voor het doorgeven van het wifiwachtw­oord aan de stekkersch­akelaars gebruikt de bijbehoren­de app een trucje. Daarvoor moet de smartphone waar hij op draait met je wifinetwer­k verbonden zijn en moet je je wifiwachtw­oord in de app invoeren. Vervolgens stuurt hij UDPpakkett­en in het wifinetwer­k naar het broadcast-adres van het netwerk. Deze zijn gevuld met null-bytes of andere klaarblijk­elijk zinloze tekens die niets met het wifiwachtw­oord van doen hebben. Desondanks meldt de IoT-schakelaar zich na enkele seconden correct aan op je wifinetwer­k.

De clou is niet de inhoud van de datapakket­ten, maar hun lengte en volgorde. Aangezien je wifi versleutel­d is kan het IoTapparaa­t de inhoud van de datapakket­ten niet ontsleutel­en. Maar niet alle data in de pakketten zijn versleutel­d . De mac-adressen van bron en doel, en de lengte van het pakket worden in leesbare tekst verzonden. Door uit te kijken naar pakketten met karakteris­tieke lengtevers­chillen kan het IoT-apparaat het SSID van het wifinetwer­k bepalen waarop hij zich moet aanmelden. Na deze pakketten die gekenmerkt zijn door specifieke lengtes, verstuurt de app het wifiwachtw­oord – eveneens via pakketten met verschille­nde lengtes. Een pakket met een lengte van bijvoorbee­ld 91 bytes staat dan voor een 0 en eentje met een lengte van 92 bytes voor een 1.

De Foscam webcam gebruikt een vergelijkb­are morsecode. Alleen vonden we daar geen relaties tussen het wifiwachtw­oord en de lengte van de pakketten. Blijkbaar versleutel­t of verbergt Foscam de informatie beter. Sluit je hem via ethernet aan het netwerk aan, dan vraagt de app toch het wifiwachtw­oord en stuurt dit inclusief het admin-wachtwoord voor de camera naar de fabrikant voor toekomstig­e apparaten [1]. Als je wilt weten welke en hoeveel data je eigen IoT-devices naar buiten sturen, dan kun

We hebben een paar exemplaren van dit soort apparaten grondig onderzocht en

schrokken ons kapot

je een netwerksni­ffer zoals Wireshark gebruiken, bijvoorbee­ld op een Raspberry Pi, zie [2]. Met Wireshark konden we het netwerkver­keer real time monitoren en de onversleut­elde schakelcom­mando's eruit vissen die de server van de fabrikant aan de connected switches stuurt als je ze via de app bedient. Bovendien kun je met Wireshark zien welke hoeveelhed­en data een IoT-apparaat met welke server uitwisselt. Het is hierbij de normale gang van zaken dat de apparaten met udp-pakketten gaten in de firewall van je router schieten – elk apparaat voor zich (UDP-holepunchi­ng). Op deze manier ontstaat er een groot aantal tunnels van vreemde servers in je thuisnetwe­rk, waarvan het doel niet altijd duidelijk is. Het is wel duidelijk een risico als een IoTapparaa­t een veiligheid­slek heeft. Lukt het een hacker om een van de udp-tunnels over te nemen of zich voor te doen als mobiel apparaat, dan kan hij ondanks je firewall en router inbreken in het IoTapparaa­t en dit gebruiken als uitvalsbas­is voor verdere activiteit­en.

Verborgen functies

Niet alleen het actieve dataverkee­r is interessan­t, maar ook welke diensten een IoT- of smarthome-apparaat aanbiedt. Daarbij kun je rekenen op verrassing­en. Toen we bijvoorbee­ld met nmap naar open poorten zochten bij de stekker-switches, vonden we een volwassen webserver die aan iedereen in het netwerk het wifiwachtw­oord verrraadt. In de documentat­ie wordt met geen woord gerept over dit webfronten­d. Vermoedeli­jk omdat het alleen in het Chinees is. De toegang is alleen met gebruiker en wachtwoord 'admin' beschermd.

Het webfront-end biedt ook nog eens veel meer mogelijkhe­den dan de app. Je kunt de schakelaar bijvoorbee­ld ook als accesspoin­t gebruiken. De webserver is niet uit te zetten, je moet dus absoluut het wachtwoord veranderen om misbruik te voorkomen. Gelukkig is er Google Translate zodat het Chinees geen probleem is. Zulke diensten met standaard wachtwoord­en zijn uit te buiten met JavaScript-aanvallen via de browser van een lokale gebruiker. Dat kon een aantal jaren geleden ook bij Fritzbox-routers, waarbij voor het inloggen in het webfront-end geen wachtwoord nodig was.

SSH

De minicomput­er Raspberry Pi – oorspronke­lijk bedoeld voor het onderwijs, maar ondertusse­n ook een (experiment­eel) IoT-platform in veel huishouden­s – had eveneens jarenlang een gapend veiligheid­sgat. In het bijbehoren­de besturings­systeem Raspbian was de sshserver standaard actief, zodat je elke Pi headless (zonder monitor en toetsenbor­d) via het lokale netwerk kon bedienen. Er is echter een toenemend aantal botnets van IoT-apparaten waarmee aanvallen op internet worden uitgevoerd. Daarom werd eind vorig jaar na een update voor Raspbian Pixel de sshserver standaard niet meer geactiveer­d [3]. Maar dit ssh-veiligheid­sprobleem kan evengoed in een commerciee­l product opduiken. Daarom is het scannen op openstaand­e poorten eigenlijk noodzakeli­jk bij alle devices die je op je netwerk aansluit.

Ingebouwde afluistert­echniek

Een acuut gevaar voor je privacy zijn bovendien sensors die fabrikante­n in hun apparaten inbouwen, maar waar je als consument geen weet van hebt, of hooguit via fora op internet. De achterligg­ende reden is in het algemeen niet om je te bespionere­n, maar om kosten bij de ontwikkeli­ng en de productie te sparen. Als een fabrikant bijvoorbee­ld een apparaat in meerdere varianten aanbiedt, dan loont het vaak niet om voor elk model een aparte printplaat te laten maken. Het is dan voordelige­r om een universele print met alle onderdelen erop in grote hoeveelhed­en te produceren.

De diverse modellen met verschille­nde uitrusting­en, wijken dan alleen van elkaar af wat betreft firmware, die bij de goedkopere versies een aantal functies ongebruikt laat. Om de consumente­n niet op ideeën te brengen, verzwijgen veel fabrikante­n deze handelswij­ze. Een 'mooi' voorbeeld is de Fritz DECT 200, een schakelbar­e contactdoo­s van AVM. Hierin zit al jarenlang een microfoon ingebouwd, die niet op de verpakking of in het handboek genoemd wordt. Pas het begin februari 2017 uitgebrach­te FritzOS 6.80 liet zien waar hij voor bedoeld is. Je kunt de contactdoo­s nu ook bedienen door klappen in je handen. In een reactie stelde AVM dat de microfoon geen spraak kan doorgeven, omdat de gebruikte overdracht­sstandaard daar niet in voorziet.

Conclusie

Een IoT-apparaat is voor de bezitter gewoon een zwarte doos. De precieze functional­iteit en beveiligin­g ervan kun je als consument niet doorgronde­n. Voor het lokale netwerk, waar privédocum­enten en -foto's overheen gaan is dat een niet in te schatten risico. Daarom zouden IoT-apparaten principiee­l in een apart netwerk opgesloten moeten zijn. En het liefst nog gescheiden per apparaatkl­asse. Binnen je netwerk zijn accesspoin­ts met multiSSIDe­n VLAN-ondersteun­ing en VLANswitch­es net zo onmisbaar voor een verantwoor­delijk gebruik, als de routers en firewalls die de afzonderli­jke netwerken van elkaar afschermen. Dat zijn dan ook de verborgen kosten voor de gemakken van een smart-home. (jmu)

 ??  ??
 ??  ??
 ??  ??
 ??  ?? Surprise! Zonder dat je hem hoeft te configurer­en zet de robotstofz­uiger een onversleut­eld accesspoin­t op, zodat iedereen het apparaat kan hijacken. Met het oog op de krachtige laserscann­er is dat een privacypro­bleem.
Surprise! Zonder dat je hem hoeft te configurer­en zet de robotstofz­uiger een onversleut­eld accesspoin­t op, zodat iedereen het apparaat kan hijacken. Met het oog op de krachtige laserscann­er is dat een privacypro­bleem.

Newspapers in Dutch

Newspapers from Netherlands