Rootkit
Bijgewerkt op · Door Maarten van den Bos
Een rootkit is kwaadaardige software die een aanvaller na een inbraak installeert om ongemerkt toegang met beheerdersrechten te houden. De rootkit past het besturingssysteem zo aan dat hij zichzelf en andere malware verbergt. Daardoor is een rootkit moeilijk te ontdekken en vaak alleen zeker te verwijderen door het systeem opnieuw op te bouwen.
Wat is een rootkit?
De naam bestaat uit 2 delen. Root is op Linux- en Unix-systemen de gebruiker met de hoogste rechten. Een kit is een set gereedschap. Een rootkit is dus gereedschap om root te blijven: de volledige controle over een systeem houden nadat je bent binnengekomen.
Het Amerikaanse standaardisatie-instituut NIST omschrijft een rootkit als een verzameling bestanden die op een systeem wordt geïnstalleerd om de normale werking op een kwaadaardige en verborgen manier te veranderen. Volgens NIST maakt een rootkit meestal veel wijzigingen om zijn eigen bestaan te verbergen. Daardoor is het heel moeilijk vast te stellen dat hij er is en wat hij heeft veranderd.
Een rootkit is meestal niet de manier waarop een aanvaller binnenkomt. Dat gebeurt eerst via bijvoorbeeld een phishingmail, een trojan of een onbekend lek, een zero-day. De rootkit komt daarna: hij zorgt dat de aanvaller binnen blijft en dat andere malware onzichtbaar blijft voor de beheerder en de virusscanner.
Hoe werkt een rootkit?
Een rootkit verbergt zich door de onderdelen te manipuleren die een beheerder of scanner gebruikt om te kijken wat er op een systeem gebeurt. Vraagt een programma om een lijst van bestanden of processen, dan laat de rootkit zijn eigen bestanden en processen weg.
Rootkits verschillen in hoe diep ze zitten:
| Soort | Waar hij zit | Gevolg |
|---|---|---|
| Rootkit in gebruikersruimte | In programma’s en bibliotheken van het besturingssysteem | Relatief makkelijker te vinden met gespecialiseerde scanners |
| Kernel-rootkit | In de kern (kernel) van het besturingssysteem | Kan alle controles van het systeem zelf misleiden |
| Bootkit of firmware-rootkit | In het opstartproces of de firmware van een apparaat | Kan een herinstallatie van het besturingssysteem overleven |
Omdat een rootkit de meetinstrumenten van het systeem zelf beïnvloedt, zoeken beveiligers vaak van buitenaf: door het systeem op te starten vanaf een schone schijf, of door netwerkverkeer te analyseren dat de rootkit niet kan verbergen.
Voorbeeld uit de praktijk
In februari 2024 maakte de MIVD bekend dat het geavanceerde Chinese malware had aangetroffen op een losstaand computernetwerk van de krijgsmacht (bron: Defensie, 2024). De malware, COATHANGER genoemd, was gebouwd voor FortiGate-systemen van Fortinet. COATHANGER is technisch een Remote Access Trojan, maar deelt de eigenschap waar rootkits om bekend staan: onzichtbaar blijven en niet weggaan.
Volgens het NCSC bleef de toegang bestaan, ook als een slachtoffer beveiligingsupdates van FortiGate installeerde. In 2022 en 2023 kreeg de statelijke actor toegang tot ten minste 20.000 FortiGate-systemen wereldwijd. Zelfs met het technische rapport over COATHANGER zijn infecties lastig te identificeren en te verwijderen (bron: NCSC, 2024).
Rootkits in de praktijk van een security-professional
Een SOC-analist krijgt met rootkits te maken bij incidenten waarbij een aanvaller lang onopgemerkt binnen was. Signalen zijn vaak indirect, zoals verkeer naar een onbekende server of een systeem dat anders reageert dan verwacht. Tools voor endpoint detection and response helpen, maar een goede rootkit probeert ook die te misleiden.
Rootkits horen vaak bij geavanceerde aanvallers, een APT. Voor het herstel adviseert NIST: als er rootkits of backdoors zijn geïnstalleerd, is het opnieuw opbouwen van het systeem de betrouwbaarste manier om de integriteit te herstellen. Een ethical hacker leert in de opleiding hoe rootkits werken om ze beter te kunnen vinden, zie ook opleidingen ethical hacking.
Veelgestelde vragen
Hoe weet ik of er iemand meekijkt op mijn computer?
Let op programma’s voor bediening op afstand die je niet zelf hebt geïnstalleerd, een webcamlampje dat zonder reden aangaat, een muis die zelf beweegt en onbekende inlogmeldingen. Een rootkit kan zulke signalen verbergen. Heb je sterke twijfel, laat de computer dan controleren door een specialist of installeer hem opnieuw.
Hoe kun je zien of je malware hebt?
Mogelijke signalen zijn een trage computer, onbekende programma’s, pop-ups, een virusscanner die zonder reden uit staat en veel onverklaarbaar netwerkverkeer. Scan met een actuele virusscanner. Een rootkit verbergt zich juist voor zulke scans; een scan vanaf een schone opstartschijf of een gespecialiseerde rootkitscanner geeft dan meer zekerheid.
Hoe haal je malware weg?
Gewone malware verwijder je meestal met een virusscanner. Bij een rootkit is dat onbetrouwbaar, omdat je niet zeker weet wat hij heeft veranderd. NIST adviseert bij rootkits en backdoors het systeem opnieuw op te bouwen. Zet daarna eerst updates en een nieuw wachtwoord in, en zet back-ups pas terug als je zeker weet dat ze schoon zijn.
Hoe merk je dat je computer gehackt is?
Signalen zijn wachtwoorden die niet meer werken, inlogmeldingen die je niet herkent, berichten die vanuit jouw accounts zijn verstuurd en programma’s of accounts die je niet zelf hebt aangemaakt. Wijzig je wachtwoorden vanaf een ander, schoon apparaat en zet multifactorauthenticatie aan.
Bronnen
Gerelateerde begrippen
- Malware
Malware is een verzamelnaam voor kwaadaardige software die bewust is gemaakt om schade te doen. Het woord komt van het Engelse malicious software. Virussen, wormen, trojans, spyware en ransomware zijn allemaal vormen van malware. Malware kan bestanden stelen of versleutelen, systemen laten uitvallen en apparaten overnemen voor criminelen.
- Trojan
Een trojan, of Trojaans paard, is malware die zich voordoet als nuttige software of een onschuldig bestand. Wie het programma installeert of de bijlage opent, activeert ongemerkt een verborgen functie. Die kan een achterdeur openen voor de aanvaller, wachtwoorden stelen of andere malware binnenhalen, zoals ransomware. Een trojan verspreidt zich niet vanzelf.
- EDR (endpoint detection and response)
EDR in security staat voor endpoint detection and response: software op laptops, werkstations en servers die continu vastlegt wat er op het apparaat gebeurt en verdacht gedrag herkent. Anders dan een klassieke virusscanner let EDR op gedrag in plaats van alleen op bekende malware. Een analist kan een besmet apparaat vanuit EDR op afstand onderzoeken en van het netwerk isoleren.
- APT (advanced persistent threat)
APT staat voor advanced persistent threat: een aanvaller met veel kennis en middelen die langdurig en gericht probeert binnen te dringen in een organisatie en daar ongemerkt te blijven. Meestal gaat het om groepen die voor een staat werken en uit zijn op spionage of het voorbereiden van sabotage. Met APT wordt ook de aanvalsgroep zelf bedoeld, zoals APT28.
- Zero-day
Een zero-day is een kwetsbaarheid in software of hardware die aanvallers al misbruiken voordat de maker ervan weet of een beveiligingsupdate heeft uitgebracht. De naam geeft aan dat de maker 0 dagen had om het lek te dichten. Een zero-day exploit is de code of methode waarmee aanvallers zo'n onbekend lek misbruiken.