Niets is onhackbaar, maar als je de ethernetkabel uit je computer trekt kom je toch een heel eind, zou je denken. Niet als het aan Mordechai Guri ligt. De Israëlische beveiligingsonderzoeker van de Ben Gurion Universiteit maakt er al jaren werk van te onderzoeken hoe je computers in air-gapped-netwerken af kan luisteren. Dat doet hij steevast volgens een vast patroon. Hij infecteert een systeem met malware en manipuleert daarmee een hardwarecomponent, zoals een ventilator of ledlampjes. Vervolgens analyseert hij die gemanipuleerde hardwarecomponenten. Zo kan Guri bit voor bit wachtwoorden achterhalen door de lampjes van een router, de ventilatoren van een desktop en de externe speakers van een computer aan te passen en af te luisteren. Inmiddels mag hij zich de meest gerenommeerde onderzoeker op het gebied van air-gapped-malware noemen.
Multidisciplinair
Guri begon zijn onderzoekstocht naar air-gapped-malware als onderdeel van zijn doctoraat, dat hij in 2014 behaalde. Air-gapped-netwerken waren een onderdeel van zijn eindonderzoek, al lag de basis daarvan ergens anders. In zijn proefschrift onderzocht hij hoe locatiegegevens van mobiele telefoons gespooft konden worden met behulp van iot-apparaten in de buurt. De scriptie ging over het heimelijk verzenden van informatie tussen twee netwerken. Daar raakte Guri van gecharmeerd. In zijn verdere onderzoeken ging hij steeds verder door op dat specifieke aspect. "Ik vind dat interessant vanuit een academisch perspectief omdat het zo multidisciplinair is", zegt hij tegen Tweakers. "Het draait niet alleen om cybersecurity binnen het domein van alleen software, maar je hebt ook te maken met natuurkunde, elektromagnetiek, optica, akoestiek en meer. De combinatie van die verschillende velden is interessant en uitdagend."
Inmiddels is Mordechai Guri het hoofd van het Advanced Cyber-Security Research Lab aan de Ben-Gurion Universiteit in Negev in Israël. Zijn cv is niet mals; hij heeft inmiddels zeker 27 onderzoeken op zijn naam staan met typische securitynamen zoals Power-Supplay, AirHopper, LED-it-Go en Fansmitter. Die slaan op de elementen die Guri en zijn team manipuleren voor hun onderzoek. Daarin komen voedingen, wifi, ledlampjes en ventilatoren aan bod, waarmee Guri wachtwoorden en strings van bits en bytes weet te achterhalen.
Vast stramien
Guri's onderzoek volgt in essentie telkens hetzelfde stramien. Hij zet een computernetwerk op dat lijkt op het netwerk dat een zwaarbeveiligd kantoor zou gebruiken, dus zonder verbindingen naar de buitenwereld. In de echte wereld vind je zulke kantoren in de energiesector, in de medische industrie of bij banken. Guri infecteert dat netwerk met zijn zelfgemaakte malware. Daarmee manipuleert hij een onderdeel van de computer of het netwerk. Hij laat bijvoorbeeld de lampjes van een router knipperen, de ventilator ronddraaien of de hdd's krassen. Dat gebeurt met een patroon dat per onderzoek verschilt, maar overal hetzelfde effect heeft. Bepaalde data, zoals een wachtwoord of andere tekst, wordt omgezet naar een binaire code die vervolgens door het apparaat wordt doorgegeven. Als voorbeeld: in Guri's onderzoek Brightness wordt de schermhelderheid gemanipuleerd door bij een '1' de bovenkant en bij een '0' de onderkant van het scherm helderder te maken. Bij andere onderzoeken gebeurt hetzelfde met harde geluiden van bijvoorbeeld een ventilator of een hdd, waarbij harde geluiden een '1' weergeven en zachte geluiden een '0' aangeven. Dit kan ook met lampjes die lang of kort knipperen. Tot slot wordt die data afgeluisterd, met bijvoorbeeld een smartphone die in de buurt aanwezig is of door een gehackte beveiligingscamera, of, in het meest extreme geval, met een drone die voor een raam langs vliegt. In Guri's onderzoeken komt zowel de manipulerende malware aan bod als de exfiltratiemethode, al is goed te merken dat in die eerste stap de meeste aandacht ligt.
Onderzoek | Exfiltratiemethode |
LANtenna | Straling van ethernetkabels |
AIR-FI | Signalen in wifi-frequenties |
Power-Supplay | Geluid van voedingen |
Air-Viber | Computervibraties veroorzaakt door ventilatoren |
Brightness | Schermhelderheid |
PowerHammer | Stroomkabels |
Mosquito | Speakers |
Odini | Magnetische straling van pc's |
Magneto | Magnetische straling van cpu's |
AirHopper | FM-signalen uit een videokaart |
BitWhisper | Hitte van een pc |
GSMem | Gsm-frequenties |
DiskFiltration | Geluid van harddrives |
USBee | Magnetische straling van een usb-drive |
LED-it-GO | Leds van een harddrive |
Fansmitter | Ventilatoren |
aIR-Jumper |
Infraroodlicht van camera's |
Ctrl-alt-led | Leds van toetsenborden |
xLED | Leds van switches en routers |
Optical 1 | Onzichtbare afbeeldingen |
Optical 2 | Leds van switches en routers |
CD-LEAK | Geluid van cd-drives |
Stap 1: infiltratie
Met die exfiltratiemethode lukt het Guri en zijn team altijd om data te ontfutselen van een systeem dat verder geen enkele verbinding met de buitenwereld heeft. Bij het ene onderzoek zijn binaire strings sneller te achterhalen dan bij andere. Soms gaat het om een paar bits per uur, maar in andere onderzoeken om seconden. Het lukt hem evenwel altijd. Alhoewel Guri er moeite voor doet zijn set-ups zo realistisch mogelijk te maken, zijn de meeste van zijn onderzoeken toch vooral theoretisch van aard. Dat begint met een aanname dat zijn malware op het systeem is gekomen dat hij op het oog heeft. Guri gaat namelijk wel erg makkelijk voorbij aan een vrij essentieel onderdeel dat in de praktijk nodig is om zijn onderzoek uit te voeren: hoe krijg je malware binnen op een zwaarbeveiligd netwerk?
Guri noemt in veel van zijn onderzoeken wel voorbeelden van hoe malware zich kan verspreiden. "Dat kan bijvoorbeeld met geïnfecteerde usb-sticks zijn", zegt hij. Die worden dan door een buitenstaander een gebouw binnengesmokkeld en in een pc gezet. Een andere optie 'is bijvoorbeeld een supplychainaanval', zegt Guri tijdens een presentatie op securityconferentie BlackHat. Zulke infectiemethodes zijn niet ondenkbaar, al is het zeldzaam en notoir ingewikkeld. Het beruchte geval van Stuxnet is een bekend voorbeeld. Het was uitgerekend de Nederlandse AIVD die destijds hielp het virus het Natanz-complex binnen te smokkelen, bleek in 2019 uit onderzoek van de Volkskrant. Er zijn meer methodes om malware via usb-sticks binnen te smokkelen, en er zijn ook genoeg voorbeelden te vinden waarbij supplychainaanvallen worden gebruikt om een offline systeem te infecteren. Guri verwijst in zijn onderzoeken regelmatig naar zulke aanvallen. Of beter gezegd, hij verwijst in zijn onderzoeken meestal naar hetzelfde rijtje aanvallen. Stuxnet is er een van, maar de onderzoeken linken ook naar verhalen over de CIA die een toolkit bouwde om air-gapped-netwerken te infiltreren, een aanval op een Amerikaanse veiligheidsdienst, en een onderzoek naar social engineering als potentiële methode om air-gapped-malware te verspreiden.
Niet de inbraak, wel de uitbraak
Maar dat is niet wat Guri onderzoekt. Hij vindt het buiten de scope van zijn onderzoek vallen om een aanval van voor tot achter uit te denken. Dat was ook niet het doel van zijn onderzoek toen hij daar in 2014 mee begon. "Iedereen had het toen over de heilige graal, hoe je binnen kon dringen in een air-gapped-netwerk", zegt hij. "Maar niemand had het over hoe je die informatie uit het netwerk kon halen. Daarom begon ik vooral daar naar te kijken." Met andere woorden, wil hij zeggen, over de inbraak mogen anderen hun hoofd breken. Guri denkt over de uitbraak. Zijn meest interessante onderzoek vindt hij Odini, vernoemd naar de meesterontsnapper Harry Houdini. "Dat was een van onze leukste uitdagingen: ontsnappen uit een Faraday-kooi. Odini kon data exfiltreren uit zo'n buitengewoon geïsoleerde omgeving door magnetische velden te creëren."
Dat wil niet zeggen dat Guri en zijn collega's helemaal niet nadenken over de eerste aanval. De malware die ze gebruiken is in sommige gevallen zo gemaakt dat die een systeem makkelijker kan infecteren dan andere keren. Het Odini-onderzoek naar elektromagnetische velden rondom cpu's gebruikte bijvoorbeeld malware die kon worden geïnstalleerd zonder dat er admintoegang tot de pc nodig is. Ook voor veel andere onderzoeken zoals Power-Supplay maken de onderzoekers er een punt van dat de malware moet draaien in 'een normale gebruikersmodus'. Daarbij is geen toegang tot extra hardware nodig, en geen rootrechten. "Daarmee kan de malware detectie goed ontwijken", schrijft Guri.
Afluisterdrones
De uitdaging om alleen een computer te infecteren is slechts een deel van de air-gap-puzzel, blijkt uit Guri's onderzoeken, waarbij het uitzenden van het signaal ook nog in de eerste helft van die puzzel valt. De tweede helft is om de data weer af te luisteren. Hoe dat moet gebeuren, onderzoeken hij en zijn team wel, maar hoe praktisch dat kan is een tweede. In het onderzoek Power-Supplay gebruiken de onderzoekers bijvoorbeeld een geïnfecteerde telefoon van een slachtoffer om de pulsen van de gemanipuleerde voeding af te lezen. Maar daardoor moet je dus wel een telefoon infecteren en die in de buurt van een geïnfecteerde computer krijgen. In andere onderzoeken gaat Guri inventiever en misschien ook wel wat ludieker te werk. Voor het onderzoek LED-it-go manipuleert hij de ledlampjes van een harddisk in een pc, die hij vervolgens 'afluistert' door met een drone langs een raam te vliegen om dat af te lezen. Inventief, maar of zo'n aanval nou in de praktijk werkt?
Natuurgetrouwe set-up
Guri's onderzoek krijgt wel eens kritiek omdat het zo academisch is. Het gaat dan deels om de eerdergenoemde aanname dat er al malware op een systeem moet staan, maar een andere potentiële zwakke plek is de opstelling die in de onderzoeken wordt gebruikt. Met name in de vroege onderzoeken keken de wetenschappers voornamelijk naar de mogelijkheden om een bepaald proces te manipuleren, maar niet naar andere omgevingsfactoren. Je kunt bijvoorbeeld wel data laten lekken door computerventilatoren anders te laten draaien, maar als er ook een airconditioning-unit staat te blazen in dezelfde ruimte wordt het een stuk moeilijker dat geluid te horen. In latere onderzoeken houdt Guri daar steeds meer rekening mee. Bij het Odini-onderzoek naar elektromagnetische straling bekeek hij niet alleen hoe hij de straling kon manipuleren, maar ook naar hoe dat gebeurde als de pc in werking was.
Ook bij andere onderzoeken zoekt Guri naar een manier om de malware ook praktisch inzetbaar te maken. Zo is er het onderzoek Brightness, waarbij de onderzoekers de helderheid van een beeldscherm manipuleren. Dat onderzoek begon van meet af aan al met verschillende uitdagingen, schrijven de wetenschappers in het paper. Een belangrijke daarvan: de implementatie moet 'minimale veranderingen hebben zodat de getoonde informatie onzichtbaar is voor het menselijk oog'. Als je als gebruiker van een geïnfecteerd systeem immers naar een flikkerend scherm kijkt, heb je al snel door dat er iets niet in de haak is.
De opstellingen van de computers zijn inmiddels gemaakt om een zo natuurgetrouwe 'normale gebruikerssituatie' na te bootsen. De pc's die worden geïnfecteerd zijn nooit helemaal schoongeveegd en draaien actief programma's die een gewone kantoorwerker ook zou kunnen gebruiken. Guri zet tekstverwerkers aan, muziekprogramma's en andere software, al staat er nooit een specifiek programma op dat alleen in bijvoorbeeld een kerncentrale zal draaien. In onderzoeken waarbij desktops worden geïnfecteerd bouwt Guri zelfs complete kantoren na, in verschillende opstellingen van klein naar groot om het effect te meten dat meubilair op het verzenden van signalen heeft.
Exfiltratie
Guri denkt ook na over praktische manieren om data uit netwerken te halen. Naast het binnendringen en de werking van de malware is dat het laatste cruciale deel van het achterhalen van de data. Die data moet op de een of andere manier van de computer of een ander randapparaat worden afgelezen, worden afgeluisterd of op een andere manier worden 'geëxfiltreerd', zoals Guri het steevast noemt in de onderzoeken. Ook daar probeert Guri soms dicht bij de realiteit te blijven, maar minstens zo vaak gaat het onderzoek er gemakshalve vanuit dat een aanvaller zelf zo'n methode op kan zetten.
In het Brightness-onderzoek naar schermhelderheid probeerden de onderzoekers drie camera's uit die de helderheid konden aflezen. Ze begonnen met een professionele beveiligingscamera, maar gebruikten ook een webcam en later een smartphonecamera. Guri zegt dat hij expliciet wil dat het onderzoek daarmee ook praktisch uitgevoerd kan worden. Zo moet een beveiligingscamera precies op een beeldscherm zijn gericht, maar een smartphonecamera kan veel makkelijker data aflezen. Hetzelfde geldt voor Power-Supplay, dat ook veel aandacht aan dat probleem besteedde. In dat onderzoek werd niet alleen een smartphone ingezet die data kon aflezen. Guri gebruikte er ook een featurephone voor. "Die heeft geen wifi of bluetooth, maar is tenminste wel toegestaan in de meeste verboden gebieden", schrijft hij. Dat maakt de exfiltratie veel realistischer, maar in het onderzoek AirHopper naar radiosignalen van mobiele telefoons schrijft hij dat een aanvaller na infectie van een smartphone 'een command-and-control-channel moet opzetten.' "Dit kan worden gedaan via internet (data of wifi), of via sms, waarbij berichten kunnen worden verstuurd en ontvangen zonder de gebruiker daarvan wijs te maken." Dus, voor de goede orde, een aanvaller moet niet alleen een telefoon infecteren met malware, maar daarna ook nog even een zeroday of een andere ingewikkelde kwetsbaarheid gebruiken om een verbinding naar buiten te leggen.
De malware
Guri heeft het in zijn onderzoek regelmatig over 'de malware'. Maar eigenlijk is die term niet helemaal correct. Een groot deel van de software die hij gebruikt om computers te infecteren wordt in zijn onderzoeken niet beschreven. Daar staat weliswaar in wat de malware doet, bijvoorbeeld hoe het beeldschermen of lichten manipuleert, maar wat ontbreekt is hoe die malware vervolgens op de pc op zoek gaat naar data. Een aanvaller die een air-gapped-netwerk infecteert wil daarmee specifiek wachtwoorden achterhalen, of juist andere informatie, maar Guri en zijn team beschrijven niet hoe dat precies in zijn werk gaat. Wachtwoorden die in een Secure Enclave staan zijn doorgaans lastig te achterhalen. Ook daarvan zegt Guri dat het niet zijn primaire onderzoekstaak is. "De malware is gewoon malware, of een advanced persistent threat die dat naar een computer of netwerk stuurt. Daar is niets speciaals aan en het wordt genoemd in veel cyberaanvallen en APT-analyses en -artikelen." Met andere woorden, het is aan de aanvaller om malware te maken op basis van Guri's afluistermogelijkheden.
Het is niet waar Guri's onderzoek om draait. "Het interessante deel zijn de verborgen kanalen die de malware implementeert. In mijn onderzoek benoem ik verschillende van die kanalen voor verschillende scenario's." In zijn onderzoek noemt Guri regelmatig hoe eenvoudig het is om 'een encryptiesleutel te stelen', maar in de praktijk onderzoekt hij alleen hoe hij 'data' in de breedste zin van het woord kan stelen. In het onderzoek Power-Supplay zit er bijvoorbeeld verschil tussen het versturen van 'binaire data, toetsaanslagen en tekstbestanden' en 'kleine hoeveelheden data zoals korte teksten, encryptiesleutels, wachtwoorden.' Zijn proof-of-conceptmalware gaat niet specifiek op zoek naar een manier om de Secure Enclave open te breken - dat mag de aanvaller zelf nog regelen.
Bits per seconde
Guri's methodes zijn niet bedoeld om grote bakken data uit een computer te stelen. "De meeste methodes om de air-gap te overbruggen zijn begrensd op het gebied van snelheid", vertelt hij. "In veel gevallen kunnen ze wel worden geoptimaliseerd. Dat probeer ik in mijn artikelen ook te beschrijven." Guri onderzoekt regelmatig manieren om meer data te achterhalen zonder de originele set-up te veel te veranderen. In Power-Supplay deed hij dat bijvoorbeeld door te schuiven met de mate waarop cpu's moduleren. Dat is volgens Guri wel een wisselwerking, want een slachtoffer kan de malware misschien sneller opmerken als die te opzichtig werkt.
Het optimaliseren lukt maar tot op zekere hoogte. Daardoor zit er veel verschil in de uiteindelijke resultaten van zijn onderzoeken. Data exfiltreren vanaf schermhelderheid gaat bijvoorbeeld met 5bit/s, maar via BitWhisper dat kijkt naar warmtemanipulatie van de cpu kan hij slechts tussen de een en acht bits per uur achterhalen. Andere onderzoeken zoals AirHopper zitten daar dan weer ver boven, met een exfiltratiemogelijkheid van dertien tot zestig bits per seconde.
Academisch of niet
Het blijft de vraag of Guri's onderzoek zich nou voornamelijk afspeelt in het lab of dat hij daar nu daadwerkelijk iets mee denkt te kunnen. De wetenschapper probeert sommige onderzoeken zo natuurgetrouw mogelijk in te zetten, maar hij doet dat maar tot op zekere hoogte. "Ik denk dat het grootste deel van dit soort onderwijs op academisch niveau plaatsvindt", zegt Guri. "En inderdaad, het is vooral theoretisch. Aanvallers gebruiken bijvoorbeeld internetverbindingen en wifi om data te exfiltreren. De meeste industriesystemen zijn vandaag de dag toch ook met internet verbonden." Dat weerhoudt Guri er niet van verder te zoeken naar nieuwe methodes om uit onmogelijke systemen te ontsnappen. Er zijn ongetwijfeld nog computercomponenten te manipuleren.