eBPF inzetten voor het bouwen van effectieve high-interaction honeypots
In de huidige tijd maken mensen en organisaties intensief gebruik van onderling verbonden informatiesystemen (het internet). Dit brengt echter risico’s met zich mee, aangezien een groot deel van individuen en organisaties jaarlijks wordt getroffen door cyberaanvallen. Het beveiligen van een informatiesysteem hangt in sterke mate af van inzicht in bestaande en opkomende dreigingen. Het verzamelen van informatie over kwaadaardige activiteiten is daarom cruciaal. Honeypots zijn tools die specifiek zijn ontworpen om deze informatie te verzamelen door opzettelijk te worden gecompromitteerd en de acties van aanvallers te loggen. Hierdoor bieden ze waardevol inzicht in het gedrag en de motieven van aanvallers. De kracht van honeypots ligt in hun vermogen om niet alleen bekende aanvallen, maar ook eerder onbekende zero-day aanvallen te detecteren.
High-interaction honeypots en eBPF
Er bestaan verschillende typen honeypots, variërend van systemen met minimale interactie tot honeypots die een hoge mate van interactie met aanvallers toestaan. Dit onderzoek richt zich specifiek op high-interaction honeypots. Een veelgebruikte methode om dergelijke honeypots te realiseren is het inzetten van een volledig systeem als honeypot en het benutten van de kernel om de activiteiten van een aanvaller na een compromise te monitoren. In het verleden werd dit vaak gerealiseerd met kernel modules. Recente ontwikkelingen laten echter zien dat eBPF (extended Berkeley Packet Filter) steeds vaker wordt ingezet om de functionaliteit van de Linux kernel uit te breiden.
Het bouwen van effectieve high-interaction honeypots
eBPF maakt het mogelijk om gesandboxte programma’s uit te voeren binnen de geprivilegieerde context van de kernel, zonder direct afhankelijk te zijn van een specifieke kernelversie. Dit ontwerp verlaagt het risico op kernelcorruptie in vergelijking met traditionele kernel modules. Het onderzoek richtte zich op het benutten van eBPF voor het bouwen van effectieve high-interaction honeypots en maakte gebruik van een gray literature-analyse om de mogelijkheden van eBPF te onderzoeken op het gebied van system observability, honeypot concealment en veilige log retrieval. Deze analyse omvatte onder meer onderzoek naar open-source eBPF-projecten, zoals intrusion detection- en malware-analyseprojecten, waarin technieken worden toegepast die relevant zijn voor honeypots.
Proof of concept en detectietests
Daarnaast is een proof of concept eBPF-honeypot ontwikkeld om de praktische toepasbaarheid van de geïdentificeerde technieken aan te tonen. Vanwege praktische beperkingen was het echter niet haalbaar om alle mogelijke technieken te implementeren en te testen. Daarom bevatte de proof of concept slechts één methode voor systeem observatie, één techniek voor het verbergen van de honeypot en één aanpak voor log recovery.
Om de laatste deelvraag te beantwoorden, zijn detectiemethoden getest die traditioneel worden gebruikt tegen kernel-module-gebaseerde honeypots, met name Sebek. Deze tests zijn uitgevoerd op de proof of concept-honeypot om te bepalen of eBPF deze detectietechnieken van nature kan mitigeren.