LoRa (Long Range) is een draadloze communicatietechnologie die is ontworpen voor langeafstandsoverdracht met laag energieverbruik. Het wordt vaak gebruikt in IoT (Internet of Things) toepassingen om apparaten over lange afstanden met minimaal stroomverbruik te verbinden.
LoRa beschermt gegevens via meerdere beveiligingsmechanismen, waaronder end-to-end encryptie en apparaatverificatie. De gegevens van elk apparaat worden versleuteld met unieke sleutels, wat vertrouwelijkheid garandeert. Het LoRaWAN-netwerk biedt extra bescherming door het gebruik van beveiligde sleutels voor apparaatverificatie, waardoor ongeautoriseerde toegang wordt voorkomen. Deze encryptie zorgt ervoor dat alleen geautoriseerde apparaten met het netwerk kunnen communiceren, waardoor gevoelige gegevens tijdens het overdrachtsproces worden beveiligd.
Sensor - Cloud communicatiestroom
LoRa anti-spoofing
1. Unieke Device EUI (DevEUI)
Elke LoRa-sensor wordt geleverd met een wereldwijd unieke identificatie, de DevEUI (Device Extended Unique Identifier), doorgaans een 64-bits waarde die uniek is voor elk apparaat.
Deze identificatie wordt toegewezen door de fabrikant en geregistreerd bij de LoRa Alliance, wat betekent dat elk apparaat een uniek serienummer heeft dat wereldwijd wordt erkend.
Omdat de DevEUI uniek is, kan de netwerkserver apparaten onderscheiden en verifiëren dat het verzonden bericht daadwerkelijk van het juiste apparaat afkomstig is.
2. Apparaatverificatie via AppKey en Join-procedure
In LoRaWAN wordt het apparaat geverifieerd wanneer het verbinding maakt met het netwerk via een proces genaamd Over-the-Air Activation (OTAA). Tijdens dit proces gebruikt het apparaat een AppKey (Application Key), die bekend is bij zowel de sensor als de netwerkserver.
Wanneer een sensor verbinding maakt, genereert het sessiesleutels via een authenticatiewissel met de netwerkserver. Dit zorgt ervoor dat alleen apparaten met de juiste sleutel toegang krijgen.
3. Encryptie met AppSKey en NwkSKey
LoRaWAN gebruikt AES-128 encryptie met twee sessiesleutels: de AppSKey (voor payload-encryptie) en de NwkSKey (voor netwerkcommunicatie). Beide sleutels worden uniek gegenereerd per apparaat en voorkomen dat derden berichten kunnen ontcijferen of namaken.
Aangezien deze sleutels uniek zijn voor elk apparaat en afgeleid zijn van de geheime AppKey, kunnen alleen legitieme apparaten gegevens en berichten ondertekenen en verzenden.
De AppSKey wordt gebruikt om de payloadgegevens te versleutelen, zodat alleen de serverapplicatie (en niet de gateway of netwerkserver) de payload kan decoderen. Dit garandeert de privacy van de gegevens, zelfs als het netwerk zelf niet volledig vertrouwd wordt.
De NwkSKey beveiligt de communicatie op netwerklaag, waardoor berichten die via de LoRaWAN-gateway naar de netwerkserver worden gestuurd, niet kunnen worden gemanipuleerd. Deze sleutel wordt gebruikt voor authenticatie en berichtintegriteit.
Sensor - Cloud - Gegevensverrijking
Hoe veilig is communicatie via LoRa-apparaten?
1. LoRa gateway
Een LoRa gateway is een netwerkapparaat dat draadloze communicatie via het LoRaWAN-protocol ondersteunt. Het ontvangt signalen van LoRa-sensoren en stuurt deze via een internetverbinding naar een centrale server (de LoRa-netwerkprovider). LoRa gateways worden vaak gebruikt in IoT-toepassingen vanwege hun lange bereik en laag verbruik.
Een LoRa gateway is vergelijkbaar met een wifi-router, omdat beide apparaten signalen van draadloze apparaten ontvangen en doorsturen naar een netwerk. Het verschil is dat een LoRa gateway werkt met LoRaWAN (lage bandbreedte, lange afstand) en ontworpen is voor IoT-sensoren, terwijl een wifi-router hoge bandbreedte biedt voor internetgebruik op korte afstand. Daarnaast ondersteunt een LoRa gateway duizenden apparaten binnen een groot gebied, terwijl een wifi-router een beperkter aantal apparaten binnen een kleiner bereik bedient.
In de WMS-implementatie wordt de rol van de LoRa-netwerkprovider vervuld door TTN (The Things Network - gevestigd in Nederland) en wordt de internetverbinding tot stand gebracht via een 4G-simkaart, waardoor de datatransmissie via het mobiele netwerk plaatsvindt.
Barrières om toegang te krijgen tot de gateway
LoRa gateways zijn geïnstalleerd op klantlocaties. Daarom is toegang tot gebouwen vereist om toegang tot de gateways te verkrijgen. Dit vormt een eerste barrière.
Toegang verschaffen tot een gateway met het doel gegevens te stelen of om te leiden wordt beschouwd als (fysieke) inbraak en hacking en is strafbaar. Dit vormt een tweede barrière.
-
Na het verkrijgen van fysieke toegang tot het apparaat: Het wachtwoord van het apparaat staat vaak op de achterkant en wordt vaak niet gewijzigd. Op verzoek van de klant kunnen de wachtwoorden van de gateways worden gewijzigd en kan de sticker op de achterkant worden verwijderd. Het is echter belangrijk om op te merken dat:
Het de nodige IT-kennis vereist om toegang te krijgen tot de configuratie-interface van de gateway: men moet via een kabel verbonden zijn, het IP-adres van de laptop aanpassen, enzovoort.
Toegang tot de configuratie-interface van de gateway stelt een gebruiker in staat om de gateway verkeerd te configureren, bijvoorbeeld door een ander “serveradres” in te voeren. Vanaf dat moment worden geen gegevens meer doorgestuurd naar de IoT-cloud, dus het effect is vergelijkbaar met het uitschakelen van de gateway. Aangezien dit de datacommunicatie naar de Spacewell-cloud beïnvloedt, wordt dit opgemerkt via de veranderende / verslechterende sensorconnectiviteitsstatus.
In extreme gevallen zou men ook een kwaadaardige firmware-update op de gateways kunnen uitvoeren om de verzamelde gegevens direct af te luisteren. Echter, een hacker kan ook een eigen LoRa gateway aanschaffen of andere apparatuur gebruiken om gegevens op de 868 MHz LoRa-frequentieband af te luisteren en hetzelfde resultaat bereiken. Dit is ook de reden waarom een gateway-wachtwoord geen relevante bescherming biedt om gegevensafluistering te voorkomen.
De logs die op de gateway beschikbaar zijn bevatten alleen informatie zoals signaalsterkte, SNR (signaal-ruisverhouding), een tijdstempel, de uplink-frequentie en dergelijke. Er worden geen kritieke gegevens opgeslagen, dus gateway-logs geven geen inzicht in Device ID’s, applicatienamen, LoRa-adressen of sensormetingen.
2. LoRa sensor
Zelfs als een hacker in staat zou zijn om de gegevens tussen de sensor en de gateway af te luisteren (hetzij door de gateway over te nemen of door een ander apparaat mee te laten luisteren), is het belangrijk om te beseffen dat, zoals vermeld in Hoe LoRa uw gegevens beschermt | 3. Encryptie met AppSKey en NwkSKey, een LoRaWAN-bericht twee keer versleuteld is, dankzij het gebruik van twee verschillende encryptielagen
Netwerklaag-encryptie (AES-128): Dit beschermt de communicatie tussen de sensor en de netwerkserver (TTN). Het stelt de netwerkserver in staat te verifiëren dat het bericht van een geldig apparaat komt en niet is gemanipuleerd.
Applicatielaag-encryptie (AES-128): Deze laag versleutelt de daadwerkelijke payload van het bericht (= de gemeten bezetting). Alleen de applicatieserver (= de Spacewell-cloud) kan deze gegevens ontsleutelen met de AppSKey (Application Session Key). Dit betekent dat zelfs de netwerkserver (TTN) geen toegang heeft tot de inhoud van de payload.
LoRa gateways fungeren alleen als doorgang en slaan geen gebruikers- of payloadgegevens op. Dit betekent dat een gecompromitteerde gateway geen toegang biedt tot kritieke gegevens of encryptiesleutels.
Als een hacker een onderschept bericht dat met twee AES-128 sleutels is versleuteld zou willen ontsleutelen, zou het 158 miljoen jaar (!!) duren om het bericht te ontcijferen met de huidige algemene rekenkracht van een computer. En dit geldt voor elk afzonderlijk verzonden bericht.
Zelfs als het bericht zou worden ontsleuteld, zouden de gegevens nog vrijwel irrelevant zijn: de door de sensor verzonden gegevens bestaan voornamelijk uit de gemeten bezetting (0 of 1), een tijdstempel en het apparaat-ID. Om iets met die gegevens te kunnen doen, moet men weten welk apparaat-ID aan welke werkplek (of vergaderruimte) is gekoppeld. Om deze informatie te verkrijgen, moet men elke sensor afzonderlijk inspecteren of toegang hebben tot de back-end van het Spacewell-platform (waar apparaat-ID’s aan een locatie gekoppeld zijn).
LoRa-technologie zelf maakt het moeilijk om gegevens af te luisteren
Zoals hierboven beschreven: fysiek onderscheppen en ontsleutelen van LoRa-berichten is bijna onmogelijk. Daarnaast biedt LoRa ook mechanismen die intrinsiek zijn aan de technologie en het moeilijk maken om gegevens af te luisteren.
Langeafstandprotocol maar met beperkingen: LoRa werkt in een ongecontroleerde frequentieband (868 MHz in Europa), maar de kenmerken van laag vermogen en lage bandbreedte van LoRa beperken de mogelijkheid van grootschalige onderschepping en manipulatie.
Spread Spectrum-technologie: LoRa gebruikt Chirp Spread Spectrum (CSS), waardoor signalen zeer moeilijk te onderscheiden zijn van achtergrondruis. Dit bemoeilijkt pogingen tot onderschepping of verstoring.
LoRaWAN gebruikt frame-tellers in uplink- en downlinkberichten. Dit voorkomt dat onderschepte en opnieuw verzonden berichten (replay attacks) worden geaccepteerd door het netwerk of de applicatieserver.