Clear Sky Science · nl
Op weg naar begrip van de toepasbaarheid van runtime moving target defense voor het Internet of Things en cyberfysische systemen
Waarom kleine computers grote verdedigingslinies nodig hebben
Van slimme thermostaten tot industriële robots: het dagelijks leven steunt inmiddels op kleine verbonden apparaten die stilletjes meten, regelen en automatiseren. Maar diezelfde apparaten kunnen worden gekaapt door aanvallers die gebruikmaken van al lang bekende softwarelekken om de controle over te nemen. Dit artikel onderzoekt of een krachtig beveiligingsprincipe, moving target defense, echt werkt op de beperkte hardware die de meeste Internet of Things (IoT)- en cyberfysische systemen (CPS) aandrijft — en wat dat betekent voor het veilig houden van onze steeds meer geautomatiseerde wereld.

Een bewegend doelwit voor aanvallers
Traditionele beveiligingsmiddelen zoals firewalls of antivirus reageren meestal pas nadat een aanval begonnen is. Moving target defense gebruikt een andere tactiek: het verandert constant cruciale onderdelen van een systeem zodat aanvallers nooit zeker weten waar ze moeten mikken. De specifieke techniek die hier wordt bestudeerd is Address Space Layout Randomization (ASLR), die bij elke uitvoering herschikt waar programma’s en bibliotheken in het geheugen staan. Zo kunnen aanvallers, zelfs als ze weten dat er een kwetsbaarheid is, niet eenvoudig het exacte adres terugvinden. ASLR is inmiddels standaard op grote besturingssystemen, maar het gedrag ervan op kleine, hulpbronbeperkte apparaten — zoals vaak gebruikt in IoT en CPS — is nog niet goed begrepen.
Drie systemen op de proef gesteld
De auteurs vergelijken hoe goed ASLR werkt op drie Linux-gebaseerde configuraties: een 64‑bit Kali Linux-systeem op een typische Intel-processor en twee 32‑bit ARM-systemen met Raspberry Pi OS en OpenWRT, die dichter bij wat je in randapparatuur, routers en gateways vindt. In plaats van blind te proberen binnen te dringen, nemen ze een wetenschappelijke benadering: ze registreren herhaaldelijk waar een veelgebruikte systeembibliotheek (libc) in het geheugen terechtkomt en bouwen zo grote datasets van echte adressen op. Daarna onderzoeken ze hoe verspreid die adressen zijn, welke individuele bytes van elk adres van run tot run veranderen, en hoe onvoorspelbaar het geheel is met behulp van een maatstaf genaamd entropie. Zo kunnen ze kwantificeren hoe moeilijk het voor een aanvaller zou zijn om het juiste adres te raden.
Hoe 'willekeurig genoeg' is voldoende?
De resultaten laten een scherp contrast zien tussen het grote 64‑bit systeem en de 32‑bit apparaten. Op 64‑bit Kali Linux zijn de adressen vrijwel uniform verdeeld over een breed bereik: de meeste bytes in het adres variëren flink, heel weinig locaties herhalen zich, en een statistische test bevestigt dat de keuzes dicht bij écht willekeurig lijken. Voor een aanvaller betekent dat een enorm zoekgebied en weinig kans om snel het juiste punt te raden. Op de 32‑bit systemen daarentegen verschijnen in de praktijk slechts een kleine set van 256 verschillende adressen, zelfs bij het verzamelen van 100.000 monsters. Verschillende bytes veranderen nauwelijks, grotendeels door architecturale beperkingen en de uitlijning van geheugenpagina’s. In de praktijk betekent dit dat een aanvaller mogelijk maar een paar honderd pogingen hoeft te doen — niet miljoenen of miljarden — om het juiste adres te treffen.

Praktische aanval en geringe kosten
Om te beoordelen of deze verschillen er in de praktijk toe doen, implementeren de onderzoekers een type controle-overname-techniek bekend als return-oriented programming (ROP)-aanval op alle drie de systemen. Wanneer een belangrijke hardening-optie, Position Independent Executable (PIE), is uitgeschakeld, slaagt de aanval: de normale programmastructuur wordt omgeleid naar verborgen functies gekozen door de aanvaller. Zodra PIE echter is ingeschakeld — in combinatie met ASLR waardoor zelfs de locatie van het hoofdprogramma beweeglijk wordt — crasht de aanval betrouwbaar in plaats van dat het systeem wordt overgenomen, zowel op de krachtige 64‑bit machine als op de bescheidener 32‑bit ARM-apparaten. Metingen tonen ook dat het inschakelen van ASLR, stackbescherming en niet-uitvoerbare geheugeninstellingen slechts een kleine overhead toevoegt in geheugengebruik en uitvoeringstijd, in de orde van ongeveer één procent.
Wat dit betekent voor alledaagse apparaten
De studie concludeert dat hoewel ASLR op 32‑bit ARM-systemen wiskundig zwakker en minder willekeurig is dan op 64‑bit desktops en servers, het nog steeds bescherming biedt vergelijkbaar met oudere 32‑bit pc’s en eenvoudige aanvallen kan tegenhouden wanneer het gecombineerd wordt met andere ingebouwde verdedigingslagen. Voor de kleinste IoT-sensoren is ASLR vaak onmogelijk omdat de hardware niet de benodigde geheugenfeatures heeft; daar zijn andere technieken zoals secure boot en lichte encryptie beter geschikt. Voor randapparaten zoals routers en Raspberry Pi‑klasse bordjes is het echter zowel praktisch als zinvol om ASLR, PIE en verwante beschermingen in te schakelen. Het migreren van deze platforms naar 64‑bit architecturen, en het combineren van ASLR met andere moving-target-maatregelen op netwerk- en softwarelaag, kan de lat voor aanvallers die alledaagse objecten willen misbruiken aanzienlijk verhogen.
Bronvermelding: Gurung, D., Pradhan, M.P. & Gurung, S. Towards understanding the applicability of runtime moving target defense for the internet of things and cyber physical systems. Sci Rep 16, 5907 (2026). https://doi.org/10.1038/s41598-026-36797-4
Trefwoorden: moving target defense, ASLR, Internet of Things-beveiliging, cyberfysische systemen, buffer overflow-aanvallen