Wat is RootkitRevealer: hoe het werkt, hoe het te gebruiken en tekenen van rootkits

Laatste update: 22 september 2025
  • RootkitRevealer detecteert discrepanties tussen Windows API's en onbewerkte gegevens om verborgen problemen te ontdekken.
  • Interpreteert resultaten: NTFS-metagegevens, register- en bestandssysteemafwijkingstypen.
  • Gebruik de opties -a -c -m -r en uitvoering op afstand met PsExec; hiermee worden minimale foutpositieven vereist wanneer het systeem inactief is.
  • Preventie en reactie: Secure Boot/TPM, offline scans, anti-rootkittools en gecontroleerd herstel.

Rootkit-detector in Windows

RootkitRevealer is een van die legendarische hulpprogramma's die elke Windows-professional zou moeten kennen. Het werd ontwikkeld door het Sysinternals-team onder leiding van Mark Russinovich en hoewel het jaren geleden is verschenen, is het nog steeds een referentie als het gaat om het detecteren van rootkits. discrepanties veroorzaakt door rootkits tussen wat het systeem weergeeft en wat er daadwerkelijk op de schijf staat.

In tegenstelling tot andere scanners zoekt het niet naar handtekeningen of patronen: het vergelijkt de algemene weergave van de Windows API met de ruwe, eenvoudige weergave van de schijf en het register. Dit ogenschijnlijk eenvoudige idee onthult de mogelijkheid dat malware het systeem probeert te misbruiken. bestanden, sleutels of waarden verbergen vals spelen op het pad van systeemaanroepen.

Wat is RootkitRevealer en op welke systemen werkt het?

Het is een geavanceerd hulpmiddel om tekenen van rootkits te detecteren, zowel in gebruikersmodus zoals in de kernelmodusHet werd gemaakt voor Windows XP en Windows Server 2003 (32-bits) en wordt vaak als gratis aangeboden, is in het Engels en is ongeveer 231 KB groot. Veel vermeldingen gaven ook aan dat het destijds compatibel was met Windows NT/2000/XP/Vista.

De puur opdrachtregelversie werd uiteindelijk verwijderd omdat sommige malware-auteurs de naam van het uitvoerbare bestand begonnen te controleren. Om dit te voorkomen, wordt het programma gestart als een service vanuit een willekeurig benoemde kopie van zichzelf, waardoor het moeilijk is om het op naam te detecteren en het moeilijker wordt om een 100% console-interface.

Wat is een rootkit? Kernbegrippen

De term rootkit verwijst naar technieken en mechanismen waarmee malware (virussen, Trojaanse paarden, spyware, etc.) verbergen voor de gebruiker en beveiligingstoolsEr zijn verschillende families: persistent (overleeft reboots), memory-resident (verdwijnt bij reboot), user-mode en kernel-mode, naast andere moderne varianten.

Een rootkit in de gebruikersmodus kan functies als FindFirstFile/FindNextFile of de systeemeigen enumerators onderscheppen om vermeldingen te lekken die uw bestanden, processen of gewijzigde registersleutels. Verkenner, Opdrachtprompt en Register-editors zien dus niet wat er daadwerkelijk staat.

Kernel-mode rootkits gaan nog verder: naast het onderscheppen van de native API kunnen ze ook direct kernelstructuren manipuleren, bijvoorbeeld door hun proces uit de lijst met actieve processen te verwijderen, zodat verschijnt niet in Taakbeheer of Procesverkenner zelfs als het draait.

Er zijn hybride (deels gebruikersgebaseerd en deels kernelgebaseerd), firmware (BIOS/UEFI en andere componenten), boot- of bootkits (MBR/UEFI), virtuele (die het echte besturingssysteem in een virtuele machine plaatsen) en geheugen (niet-persistente) bootkits. Deze laatste kunnen bijzonder ongrijpbaar zijn, terwijl firmware en bootkits zelfs na herinstallatie van het besturingssysteem blijven bestaan. besturingssysteem vanaf nul.

Hoe RootkitRevealer werkt

RKR vergelijkt twee momentopnames: de Windows API-weergave (hoog niveau) en het ruwe lezen van het volume en de registerhives op laag niveau. Als een rootkit met aanroepen op hoog niveau knoeit om iets te verbergen, wordt die knoeierij onthuld omdat wat er op de schijf en in het register staat niet overeenkomt met wat de API zegt dat er is, waardoor er fouten worden gegenereerd. diagnosticeerbare discrepanties.

Theoretisch gezien zou een rootkit zich ook kunnen proberen te verbergen voor RootkitRevealer door de ruwe leesbewerkingen te onderscheppen en de gegevens direct te herschrijven. Hiervoor is grondige kennis van NTFS-, FAT- en registerformaten nodig en moet de structuur worden aangepast zonder inconsistenties of duidelijke bijwerkingen te veroorzaken. grote technische complexiteit wat zelden is waargenomen. Toch bestaat er geen waterdichte "universele detector": zelfs een boot vanuit een externe omgeving (bijvoorbeeld met behulp van de beste Linux-distributies) kunnen worden gesaboteerd door speciaal ontworpen apparaten verfijnd en aanhoudendIn de praktijk is de meest robuuste aanpak om online-analyse te combineren met offline-verificatie in vertrouwde omgevingen.

  De Windows 11-bug die Taakbeheer vermenigvuldigt en hoe je dit kunt stoppen

Vereisten, goede praktijken en uitvoering

Om de scan uit te voeren, heeft het account de rechten "Back-up maken van bestanden en mappen", "Stuurprogramma's laden" en "Volumebeheer" nodig (in Windows XP en hoger hebben beheerders deze standaard). Om foutpositieve resultaten te minimaliseren, is het raadzaam de scan uit te voeren met de systeem in stand-bymodus zonder geopende applicaties.

Om handmatig te scannen, drukt u eenvoudig op de scanknop. Tijdens het proces rapporteert het programma over de voortgang en worden eventuele afwijkingen weergegeven. Er zijn twee relevante opties: "Bestanden verbergen voor NTFS-metadata" (standaard actief om de standaardmetadata die door NTFS verborgen zijn, niet weer te geven) en "Scanlogboek" (standaard actief; als u deze optie uitschakelt, wordt de scan overgeslagen). Windows-register).

Voor automatisering ondersteunt het parameters waarmee u kunt starten, inloggen en afsluiten zonder tussenkomst: rootkitrevealer outputfile]. De optie -a start en eindigt automatisch; -c het resultaat in CSV weergeven; -m geeft NTFS-metagegevens weer; en -r schakelt registerscanning uit. Het uitvoerbestand moet in een toegankelijk lokaal volume.

Uitvoering op afstand is mogelijk met PsExec. Bijvoorbeeld: psexec \\remote -c rootkitrevealer.exe -a c:\windows\system32\rootkit.log. Met -c, de voortgang wordt niet weergegeven en afwijkingen worden afgedrukt in CSV, waardoor het importeren gemakkelijker wordt in databases of scripts.

Interpretatie van de resultaten en typische discrepanties

"Verborgen voor Windows API"-afwijkingen komen het meest voor wanneer een rootkit vermeldingen verbergt. Als u NTFS-metadataweergave niet hebt ingeschakeld, ziet u afwijkingen omdat NTFS zijn interne bestanden voor de API verbergt. $MFT of $SecureSommige antivirusprogramma's slaan gegevens ook op in alternatieve stromen en verbergen deze, wat vergelijkbare fouten veroorzaakt.

Dit zijn enkele van de standaardmetagegevens die in NTFS (Windows Server 2003) zijn gedefinieerd: $AttrDef, $BadClus, $BadClus:$Bad, $BitMap, $Boot, $LogFile, $Mft, $MftMirr, $Secure, $UpCase, $Volume, $Extend, $Extend\$Reparse, $Extend\$ObjId, $Extend\$UsnJrnl, $Extend\$UsnJrnl:$Max, $Extend\$Quota.

RKR correleert drie bronnen in het bestandssysteem: Windows API, de Master File Table (MFT) en directory-indexen op schijf. Combinaties zoals "Zichtbaar in API maar niet in index of MFT", "Zichtbaar in MFT maar niet in API", enz. kunnen voorkomen, vooral als een bestand tijdens de scan wordt aangemaakt of verwijderd en een fout oplevert. tijdsinconsistentievenster.

Voorbeeld van aanmaken tijdens het scannen: C:\newfile.txt, 8 bytes groot, met de melding "Zichtbaar in de API, maar niet in de index of MFT". Deze gevallen wijzen niet noodzakelijkerwijs op rootkits, maar op gelijktijdige veranderingen terwijl ze onderzocht werden.

Als u 'Toegang geweigerd' ziet, is er iets mis: RootkitRevealer gebruikt mechanismen om toegang te krijgen tot elk bestand, elke map of elke sleutel. Dit bericht zou dus onder normale omstandigheden niet moeten verschijnen. normale uitvoering.

In het register zijn er verschillende interessante discrepanties: "De lengte van de Windows API komt niet overeen met de ruwe data" (mogelijke poging om de werkelijke inhoud te verbergen), "Typemismatch" (bijv. REG_SZ wordt geadverteerd, maar het is REG_BINARY), "Sleutelnaam bevat ingesloten NULL-waarden" (bekende techniek die gebruikmaakt van het verschil tussen strings met een NULL-eindwaarde en strings met een telling). Voor het laatste geval moet het hulpprogramma RegDelNull van Sysinternals helpt bij het opschonen van sleutels met ingesloten NULL's.

Er kan sprake zijn van ‘gegevensmismatch’ als een waarde tijdens de scan verandert (bijvoorbeeld SQL Server-uptimes zoals HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\RECOVERYMANAGER\MSSQLServer\uptime_time_utc). U moet valideren dat de waarde toebehoort aan legitieme componenten die gegevens in realtime bijwerken.

Een illustratief geval was de HackerDefender-rootkit: de services en drivers ervan waren onzichtbaar voor de Windows API, maar waren wel aanwezig in de ruwe weergave van de registerhive. Hetzelfde gold voor de bestanden ervan, die niet rechtstreeks door het bestandssysteem werden gescand. ja het is gedetecteerd op schijf.

Veelvoorkomende fouten en problemen met rootkitrevealer.exe in forensische omgevingen

Sommige forensische kits (bijvoorbeeld WinTaylor) vermelden typische fouten die verband houden met rootkitrevealer.exe, zoals: "geen geldige Win32-applicatie", "niet gevonden", "applicatiefout" of "startprobleem". Deze meldingen verschijnen meestal tijdens de installatie, het opstarten of afsluiten van het systeem, of als gevolg van conflicten met andere applicaties. aanvragen voor ingezetenen.

De meest voorkomende oorzaken zijn ontbrekende of beschadigde bestanden, ongeldige registervermeldingen, malware-infecties, onvolledige de-installaties of conflicten met andere software. De oorzaak kan een beschadigde registervermelding zijn, onbedoelde verwijdering door een andere tool, een mislukte download of een eerdere infectie dat het binaire systeem verandert.

  Hoe ontwikkel je een effectief IT-beveiligingsbeleid?

Als een bijzonderheid van de inventaris, documenteren sommige vermeldingen het uitvoerbare bestand met een geschatte grootte van 334.720 bytes en hashes zoals SHA‑1 en MD5 (bijv. SHA‑1 d39e8a3fe92adc7d7fbc5293edf8a7b965484a59, MD5 ee738fe9bcdd605821002cec8c7206db) en CRC32 98b1af0b; ze verwijzen ook naar de versie 2.1 in zijn container-app en de categorie “Forensische toolkit/besturingssysteem”.

Methoden voor rootkitdetectie en -respons

Het detecteren van een rootkit is niet altijd triviaal. Naast specifieke tools worden technieken zoals handtekeninganalyse van bekende bedreigingen, koude vergelijking van structuren, geheugenonderzoek naar hooks en wijzigingen, en het bekijken van geheugendumps na crashes gecombineerd om verdachte modulesHet is ook gebruikelijk om te vertrouwen op preventiesystemen (IPS) om het netwerk te beschermen en infectievectoren te verminderen.

Tot de gespecialiseerde hulpprogramma's behoren GMER (verborgen processen en kernelwijzigingen), Kaspersky TDSSKiller (met name kernel bootkits en rootkits), Malwarebytes Anti-Rootkit, Microsoft Defender Offline (scannen voordat Windows start) en RogueKiller. Deze hulpprogramma's kunt u uitvoeren vanaf een USB-stick. betrouwbare laars of in de veilige modus wordt het ontwijkingsoppervlak verkleind.

Voor boot- of firmwarebedreigingen is het raadzaam om reddingsmedia te gebruiken zoals Kaspersky Rescue Disk, de MBR te herstellen met bootrec /fixmbr Indien van toepassing en in ernstige gevallen, moet u het BIOS/UEFI bijwerken/flashen naar een schone versie van de fabrikant om het probleem op te lossen. lage persistentie.

Monitoring met Sysinternals is goud waard: Process Monitor (ProcMon) voor proces- en bestandsactiviteit, Autoruns om te controleren wat er bij het opstarten wordt geladen en RootkitRevealer voor verschillen op hoog/laag niveau. SIEM-platformen zoals Wazuh en telemetrie in bedrijfsomgevingen kunnen onverwacht netwerkgedrag of wijzigingen in de integriteit aan het licht brengen.

Als de infectie wordt bevestigd, is de redelijke volgorde: koppel de machine los van het netwerk, scan vanuit de externe omgeving, beoordeel de opstart-/firmware-integriteit en als er geen garanties zijn, maak dan een back-up van de gegevens, wis de schijf volledig (tools zoals DBAN) en installeer opnieuw vanaf geverifieerde media, waarbij u daarna maatregelen inschakelt zoals Veilig opstarten en TPM.

Preventie: Redelijke bescherming tegen rootkits

Preventie is essentieel. Houd je systeem up-to-date, patch software van derden, vermijd uitvoerbare bestanden van dubieuze bronnen en gebruik geen cracks of keygens: deze zijn een geliefd middel voor bundeling. droppers en loaders van rootkits.

Schakelt USB-autorun uit, scant externe schijven voordat ze worden geopend en beperkt of blokkeert in zakelijke omgevingen poorten en handhaaft firewalls wanneer het zinvol is. Het werkt met niet-geprivilegieerde gebruikersaccounts, past het principe van minimale privileges toe en vereist beheerdersreferenties voor kritieke wijzigingen, waardoor de kans op stille beklimmingen.

Op compatibele hardware, inschakelen Beveiligd Opstarten en TPM van UEFI om de boot chain en sleutelverzegeling te beschermen. Maak regelmatig offline of onveranderlijke back-ups en gebruik snapshots/herstelpunten om de hersteltijd te verkorten als er iets gebeurt. slaagt erin om binnen te sluipen.

Hoe rootkits worden geïnstalleerd: droppers, loaders en vectoren

Aanvallers verspreiden rootkits vaak als een gecombineerde dreiging: een 'dropper' die het pakket aflevert en een 'loader' die kwetsbaarheden (zoals bufferoverflows) uitbuit om het implantaat te plaatsen waar het niet hoort. Dit wordt vermomd als phishing-e-mail, valse installatieprogramma's of frauduleuze updates.

Klassieke vectoren zijn onder meer het kapen van berichtenclients om schadelijke links te verspreiden, het trojaniseren van software op downloadportals, het gebruiken van andere malware als drager en het insluiten van malware in documenten met rijke inhoud (bijvoorbeeld bepaalde PDF's) die, wanneer ze worden geopend, de aanval activeren. druppelaar automatisch.

Aanvalssignalen en detectie-aanwijzingen

Het doel van een rootkit is om deze 'onopgemerkt' te maken. Configuratiewijzigingen zonder tussenkomst van de gebruiker, ongebruikelijke netwerkonderbrekingen vanwege verborgen verkeer, onbekende processen, services die niet kunnen worden afgesloten en beveiligingstools kunnen echter wel worden waargenomen. uitgeschakeld zonder uitleg.

Een andere aanwijzing is tegenstrijdige informatie tussen hulpprogramma's die bestanden, processen of registersleutels weergeven via verschillende paden (API versus raw read). Dit is waar benaderingen zoals die van RootkitRevealer in uitblinken: hetzelfde object dat "op schijf staat" en "niet" voor de API. wijst op manipulatie.

  Soorten encryptie: symmetrisch, asymmetrisch en hun verschillen

Belangrijkste soorten rootkits

Gebruikersmodus: Ze werken op proces- en bibliotheekniveau. Ze zijn stabieler en relatief gemakkelijker te detecteren, hoewel ze bestanden, processen en sleutels kunnen verbergen. Een klassiek historisch voorbeeld: HackerDefender.

Kernelmodus: Ze leven in de kern, met volledige controle en grote sluipvrijheid; ze zijn moeilijk uit te roeien en veroorzaken vaak instabiliteit als ze slecht ontworpen zijn. Voorbeelden van families: TDL/Alureon in zijn evolutie.

Hybriden: Ze combineren gebruikers- en kernelcomponenten om stealth en stabiliteit in evenwicht te brengen, waardoor ze populair zijn onder aanvallers vanwege hun praktische veelzijdigheid.

Firmware/Bootkits: Ze infecteren het BIOS/UEFI of de bootsector (MBR/UEFI) om te laden vóór het besturingssysteem. Technologieën zoals Secure Boot hebben veel klassieke bootkits overbodig gemaakt, maar er zijn nieuwe ontstaan. UEFI-implantaten modern.

Virtueel en geheugen: VMBR's laden een hypervisor onder het besturingssysteem en virtualiseren deze; geheugenhypervisors bevinden zich alleen in het RAM en verdwijnen bij het opnieuw opstarten, wat erg handig is voor kortstondige operaties.

Voorbeelden en gemarkeerde chronologie

In de jaren negentig werden de eerste rootkits voor SunOS ontwikkeld; in 1999 beschreef Greg Hoglund NTRootkit (Windows, kernelmodus) en in 2003, HackerDefender (Windows 2000/XP, gebruikersmodus), wat leidde tot een touwtrekkerij met hulpmiddelen als RootkitRevealer.

In 2004 werd bij de zogenaamde "Griekse Watergate" een rootkit gebruikt om in te breken in meer dan 100 telefoons op een GSM-netwerk; in 2005 werd ontdekt dat sony bmg bevatte een anti-piraterij-rootkit op sommige cd's, wat leidde tot een groot veiligheidscontroverse.

Sinds 2008 zijn bootkits zoals TDL (TDL-1 tot TDL-4) geëvolueerd; in 2009 toonde “Machiavelli” aan dat macOS (toen Mac OS X) ook niet immuun was; in 2010, Stuxnet gebruikte rootkitcomponenten om Iraanse industriële systemen te saboteren.

In 2012 verscheen Flame, een enorme modulaire malware; in 2018 LoJax Het was de eerste UEFI-rootkit die in het wild werd gedetecteerd; en in 2019, SCRAN gecombineerde diefstal van inloggegevens en verborgen inkomstengeneratie met browsergebaseerde klikboerderijen massaal gepleegd.

Bronnen en aanbevolen literatuur

Het onderzoek van Mark Russinovich naar de Sony-zaak en zijn artikel "Unearthing Rootkits" in Windows IT Pro helpen bij het begrijpen van het fenomeen en de techniek achter RKR; het boek "Rootkits: Subverting the Windows Kernel" van Greg Hoglund en Jamie Butler is het ultieme traktaat. dieper ingaan op het onderwerp.

Het Phrack Archive, Peter Szors “The Art of Computer Virus Research and Defense”, Ed Skoudis en Lenny Zeltsers “Malware: Fighting Malicious Code” en de Windows Internals-serie (vanaf de 4e editie) zijn essentiële materialen voor iedereen die zich dieper wil verdiepen in architectuur en serieuze tegenmaatregelen.

RootkitRevealer in het Sysinternals-ecosysteem

RKR coëxisteert met andere Sysinternals-hulpprogramma's die nuttig zijn voor onderzoek: AccessChk en AccessEnum (effectieve rechten), Autoruns (alles wat begint met het systeem), Process Explorer (wie heeft wat geopend en met welke DLL), PsExec/PsTools (externe uitvoering en beheer), PsLogList en PsLoggedOn (gebeurtenissen en sessies), Sigcheck (digitale handtekeningen), SDelete (veilig wissen), ShareEnum (gedeelde bronnen) en Sysmon (geavanceerde telemetrie in het gebeurtenislogboek).

Het is gebruikelijk om verwijzingen naar "Download 1.71" te vinden in historische repositories en naar "Run Now" via Sysinternals Live. Hoewel het project oud is, blijft het mentale model – een vergelijking tussen hoog en laag – hetzelfde. sleutel tot het jagen op rootkits.

RootkitRevealer is vooral een les in defensieve engineering: als iets de informatie die de API teruggeeft manipuleert, moet je eronder kijken en het vergelijken met wat er daadwerkelijk op de schijf en in het register staat. Met goede praktijken, de juiste hulpmiddelen en offline verificatie (indien van toepassing) is het mogelijk om te ontdekken wat zich probeert te verbergen waar wij denken dat het is. niemand gaat kijken.

beste Linux-distributies voor beveiliging
Gerelateerd artikel:
De beste Linux-distributies om uw veiligheid en privacy te beschermen