- RootkitRevealer detecta discrepàncies entre API de Windows i lectura crua per destapar ocultacions.
- Interpreta resultats: metadades NTFS, tipus de discrepàncies al Registre i sistema de fitxers.
- Fes servir opcions -a -c -m -ri execució remota amb PsExec; requereix mínims falsos positius amb sistema inactiu.
- Prevenció i resposta: Secure Boot/TPM, escanejats offline, eines antirootkit i restauració controlada.

RootkitRevealer és una de les utilitats llegendàries que tot professional de Windows hauria de conèixer; va ser creada per l'equip de Sysinternals amb Mark Russinovich al capdavant i, encara que va sorgir fa anys, segueix sent una referència per entendre com es detecten les discrepàncies que provoquen els rootkits entre el que mostra el sistema i el que realment hi ha al disc.
Davant d'altres escàners, no cerca firmes ni patrons: compara la visió d'alt nivell de l'API de Windows amb la lectura crua a baix nivell del disc i del registre. Aquesta idea, aparentment senzilla, destapa quan un codi maliciós intenta ocultar arxius, claus o valors fent trampes en el camí de les trucades del sistema.
Què és RootkitRevealer i en quins sistemes funciona?
Es tracta d'una eina avançada per detectar indicis de rootkits tant en mode usuari com en mode kernel . Va néixer per a Windows XP i Windows Server 2003 (32 bits), i comunament se la troba catalogada com a gratuïta, en anglès i amb una mida propera als 231 KiB; molts llistats la van marcar també com a compatible amb Windows NT/2000/XP/Vista a la seva època.
Amb el temps es va eliminar la seva versió purament de línia d'ordres perquè alguns autors de codi maliciós van començar a vigilar el nom de l'executable; per evitar-ho, el programa es llança com a servei des d'una còpia de si mateix amb nom aleatori, cosa que dificulta aquesta detecció per nom i complica oferir una interfície 100% per consola.
Què és un rootkit? Conceptes clau
El terme rootkit designa tècniques i mecanismes que permeten a un codi maliciós (virus, troians, spyware, etc.) ocultar-se de l'usuari i de les eines de seguretat . Es distingeixen diverses famílies: persistents (sobreviuen a reinicis), residents en memòria (desapareixen en reiniciar), de manera usuari i de manera kernel, entre altres variants modernes.
Un rootkit en mode usuari pot interceptar funcions com FindFirstFile/FindNextFile, o els enumeradors nadius del sistema, per filtrar entrades que revelarien els fitxers, processos o claus del Registre modificades . Així, lExplorador, el símbol del sistema o editors del Registre no veuen el que realment existeix.
Els rootkits en mode kernel van més lluny: a més d'interceptar l'API nativa, poden manipular directament estructures del nucli, per exemple traient el procés de la llista de processos actius perquè no aparegui a Task Manager o Process Explorer encara que s'estigui executant.
Hi ha híbrids (part en usuari i part en kernel), de microprogramari (BIOS/UEFI i altres components), d'arrencada o bootkits (MBR/UEFI), virtuals (que col·loquen el SO real dins d'una màquina virtual) i de memòria (no persistents). Aquests últims poden resultar particularment elusius, mentre que els de firmware i arrencada persisteixen fins i tot després de reinstal·lar el sistema operatiu des de zero.
Com funciona RootkitRevealer
RKR contrasta dues instantànies: la visió de l'API de Windows (alt nivell) i la lectura crua del volum i dels fitxers de subarbre del Registre (hives) a baix nivell. Si un rootkit adultera les trucades dalt nivell per amagar alguna cosa, aquesta alteració es delata perquè el que hi ha en disc i Registre no coincideix amb el que l'API diu que hi ha, generant discrepàncies diagnosticables.
Teòricament, un rootkit podria intentar amagar-se també de RootkitRevealer interceptant les seves lectures crues i reescrivint les dades sobre la marxa. Per aconseguir-ho hauria de conèixer íntimament els formats de NTFS, FAT i del Registre, i modificar estructures sense provocar incoherències ni efectes laterals evidents, una mica de gran complexitat tècnica que poques vegades s'ha observat. Tot i així, no existeix un “detector universal” infal·lible: fins i tot una arrencada des d'entorn extern (per exemple, usant les millors distribucions Linux ) podria veure's sabotejat per artefactes especialment sofisticats i persistents . A la pràctica, el més robust és combinar anàlisis en línia amb verificació fora de línia en entorns fiables.
Requisits, bones pràctiques i execució
Per a la seva execució, el compte necessita privilegis de “Còpia de seguretat de fitxers i directoris”, “Carregar controladors” i “Manteniment de volum” (al Windows XP i superior els administradors els tenen per defecte). Per minimitzar falsos positives es recomana executar l'escanejat amb el sistema en repòs i sense aplicacions obertes.
En execució manual només cal prémer el botó d'anàlisi. Durant el procés, el programa va informant del progrés i va llistant discrepàncies eventuals. Hi ha dues opcions rellevants: “Amagar fitxers de metadades NTFS” (activa per defecte, per no mostrar les metadades estàndard ocultes per NTFS) i “Registre d'examen” (activa per defecte; en desmarcar-la s'omet l'escaneig del Registre de Windows ).
Per automatització, suporta paràmetres que permeten arrencar, registrar i sortir sense intervenció: rootkitrevealer outputfile]. l'opció -a inicia i finalitza automàticament; -c treu el resultat a CSV; -m mostra metadades NTFS; i -r desactiva lanàlisi del Registre. El fitxer de sortida ha d'estar en un volum local accessible.
Lexecució remota és possible amb PsExec. Per exemple: psexec \\remote -c rootkitrevealer.exe -a c:\windows\system32\rootkit.log. Amb -c, el progrés no es mostra i les discrepàncies s'imprimeixen a CSV, cosa que facilita la seva importació en bases de dades o scripts.
Interpretació de resultats i discrepàncies típiques
Les discrepàncies “Hidden from Windows API” són les més freqüents quan un rootkit amaga entrades. Si no heu activat la visualització de metadades NTFS, veureu diferències perquè NTFS oculta a l'API els vostres fitxers interns com $MFT o $Secure . També alguns antivirus emmagatzemen dades en fluxos alternatius i les amaguen, provocant entrades similars.
Aquestes són algunes de les metadades estàndard definides a NTFS (Windows Server 2003): $AttrDef, $BadClus, $BadClus:$Bad, $BitMap, $Boot, $LogFile, $Mft, $MftMirr, $Secure, $UpCase, $Volume, $Extend, $Extend, $Extend\$UsnJrnl, $Extend\$UsnJrnl:$Max, $Extend\$Quota.
RKR correlaciona tres fonts al sistema de fitxers: API de Windows, la taula mestra de fitxers (MFT) i els índexs de directoris en disc. Poden aparèixer combinacions com “Visible a l'API però no a índex o MFT”, “Visible a MFT però no a API”, etc., sobretot si un fitxer es crea o esborra durant l'anàlisi i produeix una finestra d'inconsistència temporal.
Exemple de creació durant l'escaneig: C:\newfile.txt, mida 8 bytes, amb missatge “Visible a l'API, però no en índex ni MFT”. Aquests casos no apunten necessàriament a rootkits, sinó a canvis concurrents mentre s'examina.
Si apareix “Access denied”, alguna cosa va malament: RootkitRevealer empra mecanismes per accedir a qualsevol fitxer, directori o clau, per la qual cosa aquest missatge no s'hauria de produir en condicions normals d'execució.
Al Registre, hi ha diverses discrepàncies d'interès: “La longitud de l'API de Windows no és coherent amb les dades crues” (possible intent d'ocultació del contingut real), “Error de coincidència de tipus” (ex. s'anuncia REG_SZ però és REG_BINARY), “El nom de clau conté valors NULL incrustats” (tècnica coneguda que explota la cadena). Per a aquest darrer cas, la utilitat RegDelNull de Sysinternals ajuda a netejar claus amb NULLs incrustats.
“Error de coincidència de dades” es pot produir si un valor canvia durant l'escaneig (p. ex., temps d'activitat de SQL Server com HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\RECOVERYMANAGER\MSSQLServer\uptime_time_utc). Cal validar que el valor pertanyi a components legítims que actualitzen dades en temps real.
Un cas il·lustratiu va ser el rootkit HackerDefender: els seus serveis i controladors quedaven invisibles per a l'API de Windows, però estaven presents a la lectura crua de l'hive del Registre; el mateix passava amb els seus fitxers, que l'anàlisi directa del sistema d'arxius sí que detectava en disc.
Errors i problemes comuns amb rootkitrevealer.exe en entorns forenses
En alguns kits forenses (per exemple, WinTaylor) es llisten errors típics relacionats amb rootkitrevealer.exe , com ara: “no és una aplicació Win32 vàlida”, “no trobat”, “error d'aplicació” o “problema en iniciar”. Aquests missatges solen produir-se durant instal·lació, arrancada o apagat del sistema, o per conflictes amb altres aplicacions residents.
Les causes més freqüents inclouen fitxers danyats o absents, entrades de Registre invàlides, infeccions de malware, desinstal·lacions incompletes o conflictes amb un altre programari. L'origen pot ser una entrada de Registre corrupta, una eliminació accidental per una altra eina, una descàrrega fallida o una infecció prèvia que alteri el binari.
Com a curiositat d'inventari, alguns llistats documenten l'executable amb una mida aproximada 334.720 bytes i hashes com SHA‑1 i MD5 (per exemple, SHA‑1 d39e8a3fe92adc7d7fbc5293edf8a7b965484a59, MD5 ee738fe9bcdd605821002cec8c7206db) i CRC32 98b1af0b; a més refereixen la versió 2.1 a la seva app contenidora i categoria “Forensic Toolkit/Operating System”.
Mètodes de detecció i resposta davant de rootkits
Detectar un rootkit no sempre és trivial. Més enllà d'eines específiques, es combinen tècniques com a anàlisi per firmes d'amenaces conegudes, comparació en fred d'estructures, cerca en memòria de ganxos i alteracions, i revisió de bolcats de memòria després de bloquejos per identificar mòduls sospitosos . També és habitual donar suport a sistemes de prevenció (IPS) per protegir la xarxa i reduir vectors d'infecció.
Entre les utilitats especialitzades destaquen GMER (processos ocults i alteracions en kernel), Kaspersky TDSSKiller (especialment bootkits i rootkits de kernel), Malwarebytes Anti-Rootkit, Microsoft Defender Offline (escaneig abans d'iniciar Windows) i RogueKiller. Executar-les des d'un USB d'arrencada fiable o Mode segur redueix la superfície d'evasió.
Per amenaces d'arrencada o firmware, convé utilitzar mitjans de rescat com Kaspersky Rescue Disk, restaurar el MBR amb bootrec /fixmbr quan escaigui i, en casos severs, actualitzar/“flaixejar” el BIOS/UEFI a una versió neta del fabricant per eradicar persistències de baix nivell.
La monitorització amb Sysinternals és or: Process Monitor (ProcMon) per a activitat de processos i fitxers, Autoruns per revisar què es carrega a l'inici i RootkitRevealer per a discrepàncies alt/baix nivell. Plataformes SIEM com Wazuh i telemetria en entorns corporatius poden destapar comportaments de xarxa o canvis de integritat no esperats.
Si es confirma infecció, la seqüència raonable és: desconnectar la màquina de la xarxa, escanejar des d'entorn extern, avaluar integritat d'arrencada/firmware i, si no hi ha garanties, recolzar dades, netejar el disc del tot (eines com DBAN) i reinstal·lar des de mitjans verificats, habilitant després mesures com Secure Boot i TPM.
Prevenció: blindatge raonable contra rootkits
La prevenció mana. Mantingues el sistema al dia, aplica pegats a programari de tercers, evita executables d'orígens dubtosos i no facis servir cracs o keygens: són un dels vectors favorits per empaquetar droppers i loaders de rootkits.
Desactiva l'autor d'USB, analitza unitats externes abans d'obrir-les i, en entorns empresarials, limita o bloqueja ports i aplica tallafocs quan tingui sentit. Treballa amb comptes d'usuari sense privilegis, aplica el principi de mínim privilegi i exigeix credencials d'administrador per a canvis crítics, reduint la probabilitat d' escalades silencioses.
En maquinari compatible, activa Secure Boot i TPM des de UEFI per protegir la cadena d'arrencada i el segellat de claus. Mantingues còpies de seguretat periòdiques offline o immutables i utilitza snapshots/punts de restauració per escurçar la recuperació si alguna cosa aconsegueix colar-se.
Com s'instal·len els rootkits: droppers, loaders i vectors
Els atacants solen distribuir rootkits com a amenaces combinades: un “dropper” que lliura el paquet i un “loader” que aprofita vulnerabilitats (com desbordaments de memòria intermèdia) per plantar l'implant on no ho hauria de fer. Això es disfressa en correu de phishing , instal·ladors falsos o actualitzacions fraudulentes.
Entre els vectors clàssics hi ha el segrest de clients de missatgeria per propagar enllaços maliciosos, la troianització de programari en portals de descàrrega, l'ús d'altres codi maliciós (malware) com transportistes i la incrustació en documents de contingut enriquit (p. ex., certs PDFs) que, en obrir-se, disparen el dropper automàticament.
Senyals d'atac i pistes de detecció
Que un rootkit “no es noti” és el seu objectiu. Tot i així, es poden observar canvis de configuració sense intervenció de l'usuari, intermitències de xarxa inusuals per trànsit ocult, processos desconeguts, serveis que no admeten tancament i eines de seguretat desactivades sense explicació.
Una altra pista és la informació contradictòria entre utilitats que enumeren fitxers, processos o claus del Registre per rutes diferents (API davant de lectura crua). Aquí és on enfocaments com el de RootkitRevealer brillen: un mateix objecte que “està” al disc i “no està” per a l'API apunta a manipulació.
Tipus principals de rootkits
Mode usuari: operen a nivell de processos i biblioteques. Són més estables i relativament més fàcils de detectar, encara que poden amagar fitxers, processos i claus. Exemple clàssic històric: HackerDefender.
Mode kernel: viuen al nucli, amb control total i gran sigil; són difícils d'eradicar i tendeixen a provocar inestabilitats si estan mal dissenyats. Exemples de família: TDL/Alureon en la seva evolució.
Híbrids: combinen components en usuari i nucli per equilibrar ocultació i estabilitat, resultant populars entre atacants per la seva versatilitat pràctica.
Firmware/Bootkits: infecten BIOS/UEFI o el sector d'arrencada (MBR/UEFI) per carregar-se abans del sistema operatiu. Tecnologies com Secure Boot han deixat obsolets molts bootkits clàssics, però han aparegut implants UEFI moderns.
Virtuals i de memòria: els VMBR carreguen un hipervisor per sota del SO i el virtualitzen; els de memòria només resideixen en RAM i s'evaporen en reiniciar, molt útils per a operacions efímeres.
Exemples i cronologia destacada
Als 90 es van desenvolupar els primers rootkits per a SunOS; el 1999, Greg Hoglund va descriure NTRootkit (Windows, mode kernel), i el 2003 va sorgir HackerDefender (Windows 2000/XP, mode usuari), que va impulsar un “estira-i-arronsa” amb eines com RootkitRevealer.
El 2004, l'anomenat “Watergate grec” va fer servir un rootkit per intervenir més de 100 telèfons d'una xarxa GSM; el 2005 es va descobrir que Sony BMG incloïa un rootkit antipirateria en alguns CD, desencadenant una enorme controvèrsia de seguretat.
Des de 2008 van evolucionar bootkits com a TDL (TDL-1 fins a TDL-4); el 2009 “Machiavelli” va demostrar que macOS (llavors Mac OS X) tampoc era immune; el 2010, Stuxnet va usar components de rootkit per sabotejar sistemes industrials iranians.
El 2012 va aparèixer Flame , un codi maliciós modular massiu; el 2018 LoJax es va convertir en el primer rootkit UEFI detectat a la natura; i el 2019, Scranos va combinar robatori de credencials i generació oculta d'ingressos amb granges de clics a través de navegadors compromesos en massa.
Recursos i lectures recomanades
La investigació de Mark Russinovich sobre el cas Sony i el seu article “Desenterrar rootkits” a Windows IT Pro ajuden a comprendre el fenomen i la tècnica darrere de RKR; el llibre “Rootkits: Subverting the Windows Kernel”, de Greg Hoglund i Jamie Butler, és el tractat més profund del tema.
L'arxiu de Phrack, The Art of Computer Virus Research and Defense de Peter Szor, Malware: Fighting Malicious Code d'Ed Skoudis i Lenny Zeltser, i la sèrie Windows Internals (4a edició en endavant) són materials imprescindibles per a qui vulgui aprofundir en arquitectura i contramesures serioses.
RootkitRevealer a l'ecosistema Sysinternals
RKR conviu amb altres utilitats de Sysinternals útils en recerca: AccessChk i AccessEnum (permisos efectius), Autoruns (tot el que arrenca amb el sistema), Process Explorer (qui va obrir què i amb què DLL), PsExec/PsTools (execució i administració remota), PsLog Sigcheck (firmes digitals), SDelete (esborrat segur), ShareEnum (recursos compartits) i Sysmon (telemetria avançada al registre d'esdeveniments).
És habitual trobar referències a “Download 1.71” a repositoris històrics, ia “Executar ara” via Sysinternals Live. Encara que el projecte és veterà, el seu model mental —comparar alt davant de baix nivell— continua sent clau per a caça de rootkits.
RootkitRevealer és, sobretot, una lliçó d'enginyeria defensiva: si alguna cosa manipula allò que l'API et torna, cal mirar per sota i confrontar amb el que realment existeix al disc i al Registre; amb bones pràctiques, eines adequades i verificació fora de línia quan sigui procedent, és possible destapar allò que intenta amagar-se on creiem que ningú mirarà.
Índex
- 1 Què és RootkitRevealer i en quins sistemes funciona?
- 2 Què és un rootkit? Conceptes clau
- 3 Com funciona RootkitRevealer
- 4 Requisits, bones pràctiques i execució
- 5 Interpretació de resultats i discrepàncies típiques
- 6 Errors i problemes comuns amb rootkitrevealer.exe en entorns forenses
- 7 Mètodes de detecció i resposta davant de rootkits
- 8 Prevenció: blindatge raonable contra rootkits
- 9 Com s'instal·len els rootkits: droppers, loaders i vectors
- 10 Senyals d'atac i pistes de detecció
- 11 Tipus principals de rootkits
- 12 Exemples i cronologia destacada
- 13 Recursos i lectures recomanades
- 14 RootkitRevealer a l'ecosistema Sysinternals