Rootkit
Tipo de malware diseñado para ocultar su presencia y la de otros programas maliciosos mediante modificación de funciones del sistema operativo a nivel kernel o user-mode, evadiendo herramientas de seguridad tradicionales.
El 23% de las empresas españolas infectadas con malware avanzado en 2025 tenían rootkits activos sin detectar, según ESET Security Report, permaneciendo ocultos durante 156 días de media antes de su descubrimiento forense.
¿Qué es un rootkit?
Un rootkit es un tipo de malware especialmente sigiloso diseñado para:
- Ocultar su propia presencia en el sistema infectado
- Ocultar otros programas maliciosos (backdoors, keyloggers, troyanos)
- Mantener acceso privilegiado persistente para el atacante
- Evadir detección por antivirus, EDR y herramientas forenses tradicionales
El término proviene de Unix/Linux: “root” (usuario con máximos privilegios) + “kit” (conjunto de herramientas). En Windows, equivale a privilegios de SYSTEM o Administrador.
Peligro crítico de los rootkits
Los rootkits operan a nivel de kernel (núcleo del sistema operativo) o bootloader, con control total sobre el hardware y capacidad de interceptar TODAS las funciones del sistema. Pueden ocultar archivos, procesos, conexiones de red, claves de registro y su propia existencia de herramientas de seguridad.
Diferencia con malware convencional
| Característica | Malware tradicional | Rootkit |
|---|---|---|
| Nivel de acceso | User-mode (limitado) | Kernel-mode (privilegiado) |
| Visibilidad | Visible para antivirus | Oculto activamente |
| Persistencia | Clave de registro Run | Driver kernel, MBR, UEFI |
| Detección | Firmas tradicionales | Análisis comportamiento + memoria |
| Eliminación | Desinstalador estándar | Herramientas especializadas o formateo |
Tipos de rootkits
1. Rootkits user-mode (espacio de usuario)
Operan con privilegios de aplicación (no kernel), modificando librerías del sistema (DLLs en Windows, shared libraries en Linux):
Técnicas de hooking:
| Técnica | Descripción | Ejemplo |
|---|---|---|
| IAT Hooking | Modifica Import Address Table de ejecutables | Desvía llamadas a CreateFile() para ocultar archivos |
| Inline Hooking | Inserta saltos (JMP) al inicio de funciones API | Intercepta NtQuerySystemInformation() para ocultar procesos |
| DLL Injection | Inyecta código malicioso en procesos legítimos | DLL inyectada en explorer.exe oculta carpetas |
Ejemplo de código malicioso (IAT hooking en Windows):
// Rootkit user-mode que oculta procesos propios
#include <windows.h>
// Puntero a función original
typedef NTSTATUS (WINAPI *pNtQuerySystemInformation)(
ULONG SystemInformationClass,
PVOID SystemInformation,
ULONG SystemInformationLength,
PULONG ReturnLength
);
pNtQuerySystemInformation OriginalNtQuerySystemInformation = NULL;
// Función hookeada
NTSTATUS WINAPI HookedNtQuerySystemInformation(
ULONG SystemInformationClass,
PVOID SystemInformation,
ULONG SystemInformationLength,
PULONG ReturnLength
) {
// Llamar a función original
NTSTATUS status = OriginalNtQuerySystemInformation(
SystemInformationClass, SystemInformation,
SystemInformationLength, ReturnLength
);
// Si se está listando procesos, filtrar los del rootkit
if (SystemInformationClass == SystemProcessInformation) {
// Recorrer lista de procesos y ocultar "malware.exe"
// (código simplificado)
}
return status;
}Ventajas para atacante: Fácil de desarrollar, no requiere firma digital de driver.
Debilidades: Detectable con análisis de memoria, puede ser eliminado sin formatear.
2. Rootkits kernel-mode (espacio de kernel)
Operan con máximos privilegios del sistema (Ring 0 en arquitectura x86), modificando el propio kernel:
Técnicas avanzadas:
| Técnica | Descripción | Impacto forense |
|---|---|---|
| SSDT Hooking | Modifica System Service Descriptor Table | Intercepta TODAS las syscalls del sistema |
| IRP Hooking | Intercepta I/O Request Packets | Oculta archivos a nivel de driver de sistema de archivos |
| DKOM | Direct Kernel Object Manipulation | Desvincula procesos de lista EPROCESS sin hooks |
| Driver firmado falso | Usa certificado robado/revocado | Evade protección Driver Signature Enforcement |
Ejemplo: Rootkit TDL4/TDSS (2011-2012)
- Infectaba MBR (Master Boot Record) para cargarse ANTES del sistema operativo
- Driver kernel modificaba SSDT para ocultar su presencia
- Resistente a formateo (vivía en MBR fuera de particiones)
- Deshabilitaba antivirus y actualizaciones de Windows
Indicadores forenses:
- Procesos con PID válido pero sin ejecutable en disco
- Drivers no firmados o con firma revocada
- Modificaciones en SSDT detectables con
System Service Descriptor Tablescan
3. Bootkits (rootkits de bootloader)
Infectan el proceso de arranque del sistema (MBR, VBR, UEFI):
Infección
- Sobreescribe MBR (primeros 512 bytes del disco) con código malicioso
- Guarda MBR original en sectores ocultos del disco
- Alternativa moderna: modifica bootloader UEFI
Persistencia
- Código malicioso se ejecuta ANTES de cargar Windows/Linux
- Puede infectar el kernel durante su carga en memoria
- Sobrevive a formateo de particiones (MBR está fuera)
Carga del kernel comprometido
- Bootkit inyecta driver rootkit en memoria del kernel
- Sistema operativo arranca “normalmente” pero comprometido
- Control total del atacante desde el primer instante
Bootkits históricos:
| Nombre | Año | Técnica | Eliminación |
|---|---|---|---|
| Rovnix | 2011 | MBR + VBR infection | Restauración MBR limpio + formateo |
| Olmasco | 2009 | MBR bootkit + TDL3 driver | Herramienta TDSSKiller + rebuild MBR |
| LoJax | 2018 | UEFI rootkit (primer APT) | Flash BIOS/UEFI o reemplazo hardware |
UEFI rootkits: amenaza crítica
Los rootkits UEFI (como LoJax usado por APT28) infectan el firmware de la placa base, sobreviviendo a formateo completo del disco, reinstalación del SO y reemplazo del disco duro. Eliminación requiere reflash de BIOS/UEFI o reemplazo de la placa base. Solo detectables con herramientas UEFI forenses especializadas.
Técnicas de detección forense
Análisis de comportamiento
Los rootkits no pueden ocultar TODO su comportamiento. Señales detectables:
| Indicador | Descripción | Herramienta de detección |
|---|---|---|
| Procesos fantasma | Uso de CPU sin proceso visible | Process Monitor, System Informer |
| Conexiones ocultas | Tráfico de red sin aplicación asociada | TCPView, Wireshark, netstat oculto |
| Archivos inaccesibles | Sectores de disco usados sin archivos | DiskView, sector-level analysis |
| Drivers sospechosos | Drivers sin firma o firma revocada | Autoruns, sigcheck |
| Hooks detectables | Modificaciones en SSDT/IAT | GMER, RootkitRevealer |
Análisis de memoria con Volatility
El análisis forense de RAM es la técnica más efectiva contra rootkits:
# 1. Captura de memoria física (antes de apagar equipo)
winpmem_mini_x64.exe memory.raw
# 2. Identificar perfil del sistema
volatility -f memory.raw imageinfo
# 3. Detectar procesos ocultos (DKOM)
volatility -f memory.raw --profile=Win10x64_19041 pslist > visible_processes.txt
volatility -f memory.raw --profile=Win10x64_19041 psscan > all_processes.txt
diff visible_processes.txt all_processes.txt # Procesos ocultos
# 4. Detectar hooks en SSDT (rootkits kernel)
volatility -f memory.raw --profile=Win10x64_19041 ssdt | grep -v "ntoskrnl.exe"
# 5. Listar drivers cargados (incluidos rootkit drivers)
volatility -f memory.raw --profile=Win10x64_19041 driverscan
# 6. Detectar código inyectado (malfind)
volatility -f memory.raw --profile=Win10x64_19041 malfind -D dump/
# 7. Analizar conexiones de red ocultas
volatility -f memory.raw --profile=Win10x64_19041 netscanHallazgos típicos de rootkit:
- Proceso con PID 1234 visible en
psscanpero no enpslist→ DKOM ocultación - Driver
C:\Windows\System32\drivers\svchost.syssin firma digital → Driver rootkit - Hooks en
NtQuerySystemInformationapuntando a módulo desconocido → SSDT hook
Escáneres anti-rootkit especializados
| Herramienta | Tipo | Técnicas de detección | Limitaciones |
|---|---|---|---|
| GMER | Gratuito | SSDT hooks, hidden processes, drivers | Solo Windows, puede ser detectado por rootkit |
| RootkitRevealer | Gratuito (Sysinternals) | Discrepancias API alto/bajo nivel | Obsoleto, no detecta DKOM |
| Sophos Anti-Rootkit | Gratuito | Behavioral analysis, memory scan | Ya descontinuado |
| Malwarebytes Anti-Rootkit | Gratuito | Heuristics + signatures | Integrado en Malwarebytes comercial |
| TDSS Killer | Gratuito (Kaspersky) | Especializado en TDL/TDSS bootkits | Solo familia TDL |
Arranque desde USB forense
La técnica más fiable es arrancar desde USB con distribución forense (DEFT Linux, CAINE) para analizar el disco sin cargar el sistema operativo comprometido. Los rootkits de kernel no pueden ocultarse si el SO no está cargado.
Marco legal español
Código Penal
Los rootkits son herramientas típicas en delitos informáticos graves:
| Delito | Artículo | Pena | Aplicación rootkits |
|---|---|---|---|
| Acceso ilícito a sistemas | Art. 197.3 CP | 2-5 años prisión | Rootkit mantiene acceso persistente sin autorización |
| Daños informáticos | Art. 264.2 CP | 1-3 años prisión | Modificación kernel causa daños graves al sistema |
| Interceptación comunicaciones | Art. 197.1 CP | 1-4 años prisión | Rootkits con keylogger/sniffers interceptan datos |
| Sabotaje informático | Art. 264 bis CP | 4-8 años prisión | Rootkit en infraestructuras críticas (hospitales, energía) |
Agravantes (Art. 264.4 CP):
- Afectación a infraestructuras críticas: +50% pena
- Daños especialmente graves (pérdida datos masiva): +50% pena
- Ánimo de lucro (ransomware con rootkit): +50% pena
Jurisprudencia relevante
SAN 28/2018 (Audiencia Nacional): Condena por instalar rootkit en sistema bancario para robar credenciales. La sentencia establece que:
“El uso de rootkits constituye dolo directo en delitos informáticos, dada su única finalidad de evasión de controles de seguridad y permanencia oculta, demostrando intencionalidad criminal clara.”
Pena: 4 años prisión + inhabilitación profesional + indemnización €87,000.
SAP Madrid 342/2020: Admite como prueba pericial análisis de memoria RAM que detectó rootkit DKOM. La sentencia valida:
- Análisis Volatility como metodología científica reproducible
- Volcado de memoria como evidencia digital legítima
- Cadena de custodia desde captura RAM hasta informe pericial
RGPD y rootkits
Si el rootkit comprometió datos personales:
- Notificación obligatoria (Art. 33 RGPD): 72 horas para notificar brecha a AEPD
- Comunicación a interesados (Art. 34 RGPD): Si hay alto riesgo para derechos
- Análisis de impacto (Art. 35 RGPD): Documentar alcance del compromiso
- Medidas técnicas (Art. 32 RGPD): Demostrar controles de seguridad y respuesta adecuada
Herramientas forenses para análisis de rootkits
Suite de detección y análisis
| Categoría | Herramienta | Plataforma | Uso forense |
|---|---|---|---|
| Memoria forense | Volatility 3 | Windows/Linux/macOS | Análisis RAM, detección DKOM, hooks |
| Anti-rootkit | GMER | Windows | Escaneo SSDT, hidden processes, services |
| Bootkit detection | TDSS Killer | Windows | Especializado en MBR/VBR rootkits |
| Drivers analysis | DriverView | Windows | Lista drivers cargados, firma digital |
| Live analysis | System Informer | Windows | Reemplazo Task Manager, detect hooks |
| Disk forensics | FTK Imager | Windows | Análisis sector-level, MBR inspection |
| UEFI forensics | CHIPSEC | Windows/Linux | Análisis firmware, UEFI rootkits |
Metodología forense completa
Preservación sin contaminar
- NO apagar el equipo (perder memoria RAM)
- Capturar RAM con WinPmem o LiME
- Clonar discos con write-blocker hardware
- Documentar cadena de custodia
Análisis de memoria
- Volatility:
pslist,psscan,ssdt,driverscan,malfind - Detectar procesos ocultos, hooks, drivers sospechosos
- Extraer ejecutables desde RAM (
procdump,moddump)
- Volatility:
Análisis de disco offline
- Arranque desde USB forense (sin cargar SO comprometido)
- Escaneo con anti-rootkit (GMER, RootkitRevealer)
- Análisis MBR/VBR con FTK Imager
- Verificación firma digital de drivers
Análisis de comportamiento
- Revisión logs de eventos Windows
- Timeline de archivos creados/modificados
- Análisis tráfico de red capturado
- Correlación IOCs con threat intelligence
Documentación pericial
- Informe técnico con hallazgos detallados
- Screenshots de herramientas de detección
- Hashes SHA-256 de archivos rootkit
- Timeline completo del incidente
Caso práctico: Rootkit en empresa de ingeniería
Contexto: Empresa de ingeniería civil (150 empleados, Sevilla) detecta exfiltración de planos CAD a competidor. Pérdida estimada: €420,000 en licitaciones perdidas. Denuncia penal + demanda civil.
Hallazgos forenses
| Fase | Duración | Técnicas | Descubrimientos |
|---|---|---|---|
| Triage inicial | 2 horas | Logs antivirus, Process Monitor | 3 estaciones de trabajo con comportamiento anómalo |
| Captura evidencia | 4 horas | Volcado RAM (3 equipos), clonado discos | 48 GB memoria + 2.4 TB discos |
| Análisis memoria | 12 horas | Volatility (pslist, psscan, malfind) | Rootkit user-mode detectado: DLL inyectada en explorer.exe |
| Análisis estático | 8 horas | IDA Pro, PEStudio | DLL rootkit ocultaba proceso dwm.exe (falso, no era Desktop Window Manager) |
| Análisis dinámico | 10 horas | Cuckoo Sandbox, Wireshark | Exfiltración a 185.220.102.XX via HTTPS cifrado, 1.2 GB archivos .dwg |
| Atribución | 6 horas | OSINT, análisis IP, correlación | Servidor C2 alojado por ex-empleado despedido 4 meses antes |
Técnica del rootkit
DLL Injection con IAT Hooking:
// Rootkit user-mode encontrado (simplificado)
// Inyectaba DLL en explorer.exe para ocultar proceso malicioso
BOOL HookIAT(LPCSTR lpLibraryName, LPCSTR lpProcName, DWORD dwNewAddress) {
PIMAGE_DOS_HEADER pDosHeader = (PIMAGE_DOS_HEADER)GetModuleHandle(NULL);
PIMAGE_NT_HEADERS pNTHeaders = (PIMAGE_NT_HEADERS)((DWORD)pDosHeader + pDosHeader->e_lfanew);
// Buscar tabla de imports
PIMAGE_IMPORT_DESCRIPTOR pImportDesc = (PIMAGE_IMPORT_DESCRIPTOR)(
(DWORD)pDosHeader + pNTHeaders->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress
);
// Iterar imports y reemplazar puntero a función
// (código completo omitido por brevedad)
// Desviar NtQuerySystemInformation para ocultar "dwm.exe"
return TRUE;
}Funcionalidad maliciosa:
- Monitorear carpeta
C:\Proyectos\con FileSystemWatcher - Comprimir archivos .dwg en lotes de 50 MB
- Cifrar con AES-256 (clave hardcoded en DLL)
- Exfiltrar via POST HTTPS a servidor C2
- Ocultarse de Task Manager y Process Explorer
Evidencia judicial
Informe pericial de 94 páginas con:
- Análisis de memoria RAM: Detección proceso oculto con Volatility
- Extracción de DLL rootkit: Hash SHA-256, análisis desensamblado
- Timeline de exfiltración: 47 sesiones en 3 meses, 1.2 GB CAD files
- Atribución técnica: Servidor C2 registrado con email del ex-empleado
- Impacto económico: 5 licitaciones perdidas, €420,000 daño demostrable
Resultado: Ex-empleado condenado a 3 años prisión (Art. 197.3 + 264 CP) + indemnización €380,000. Empresa implementó DLP y EDR.
Prevención de rootkits
Medidas técnicas
| Control | Implementación | Efectividad contra rootkits |
|---|---|---|
| Secure Boot | UEFI con firmas digitales verificadas | ✅ Bloquea bootkits (MBR/UEFI) |
| Driver Signature Enforcement | Solo drivers firmados por Microsoft | ✅ Previene kernel rootkits |
| Virtualization-Based Security | Windows Defender System Guard | ✅ Aísla kernel en hypervisor |
| EDR con análisis de memoria | CrowdStrike, SentinelOne, Microsoft Defender ATP | ✅ Detecta rootkits en tiempo real |
| Integrity Monitoring | AIDE, Tripwire, OSSEC | ⚠️ Detecta cambios en archivos del sistema |
| Least Privilege | Usuarios sin admin, UAC activado | ⚠️ Dificulta instalación (no previene) |
Detección temprana
Señales de posible rootkit:
- Rendimiento degradado sin causa aparente (CPU/RAM alta)
- Antivirus o Windows Defender deshabilitado repetidamente
- Conexiones de red a IPs sospechosas (verificar con TCPView)
- Archivos del sistema modificados (verificar con
sfc /scannow) - Drivers no firmados cargados (verificar con
sigcheck -u -e C:\Windows\System32\drivers)
FAQs sobre rootkits forenses
¿Cómo saber si mi ordenador tiene un rootkit instalado?
Señales principales:
- Rendimiento degradado sin razón (CPU alta sin procesos visibles)
- Procesos ocultos en Task Manager pero visibles con System Informer
- Conexiones de red sospechosas (verificar con TCPView o Wireshark)
- Antivirus deshabilitado repetidamente sin intervención del usuario
- Archivos del sistema modificados o inaccesibles
Confirmar con análisis técnico: Escaneo anti-rootkit (GMER), análisis de memoria con Volatility, o arranque desde USB forense para análisis offline sin cargar el SO comprometido.
¿Se puede eliminar un rootkit o hay que formatear?
Depende del tipo de rootkit:
- Rootkits user-mode: Eliminables con herramientas especializadas (Malwarebytes, GMER) sin formatear
- Rootkits kernel: Suelen requerir formateo completo + reinstalación limpia del SO
- Bootkits (MBR/VBR): Requieren restauración MBR limpio + formateo de particiones
- UEFI rootkits: Requieren reflash de BIOS/UEFI o reemplazo de placa base (casos extremos)
En contextos forenses, se recomienda preservar la evidencia antes de cualquier limpieza: volcado de memoria, clonado de disco, análisis completo del rootkit.
¿Cuánto cuesta un análisis forense de rootkit para peritaje judicial?
Precios orientativos según complejidad:
- Rootkit user-mode básico: €800-1,200 (8-12 horas análisis)
- Kernel rootkit avanzado: €1,200-1,800 (15-20 horas)
- Bootkit con persistencia UEFI: €1,800-2,500 (25-35 horas)
Incluye: análisis técnico completo (memoria + disco), documentación pericial admisible, cadena de custodia certificada, extracción de IOCs, timeline detallado y ratificación en juicio si es necesaria.
¿Necesitas análisis forense de rootkit?
En Digital Perito realizamos análisis técnico especializado en rootkits con validez judicial para casos de:
- Detección de acceso persistente no autorizado en sistemas empresariales
- Investigación de sabotaje informático con rootkits kernel
- Análisis de brechas de seguridad con compromiso de kernel
- Peritajes para procedimientos penales (Art. 197, 264 CP)
- Análisis de malware avanzado con capacidades de ocultación
Metodología certificada ISO 27037 | Análisis con Volatility y herramientas forenses líderes | Disponibilidad 24/7 para incidentes críticos
Consulta gratuita análisis de rootkit
Primera videollamada de 20 minutos sin coste para evaluar tu caso. Presupuesto en 24 horas con alcance detallado del análisis forense necesario.
Contactar con perito forense en rootkits →
Jonathan Izquierdo | Perito Informático Forense Ex-CTO | 5x AWS Certified | Metodología ISO 27037 📍 Jaén, España | Cobertura nacional
Preguntas Frecuentes
¿Cómo saber si mi ordenador tiene un rootkit instalado?
Señales: rendimiento degradado, procesos ocultos en Task Manager, conexiones de red sospechosas, antivirus deshabilitado sin razón. Confirmar con análisis de memoria (Volatility), escáneres anti-rootkit (GMER, RootkitRevealer) o arranque desde USB forense.
¿Se puede eliminar un rootkit o hay que formatear?
Rootkits user-mode se pueden eliminar con herramientas especializadas. Rootkits kernel y bootkits suelen requerir formateo completo + reinstalación limpia del SO, ya que pueden sobrevivir a desinstalaciones y modificar MBR/UEFI.
¿Cuánto cuesta un análisis forense de rootkit para peritaje judicial?
€800-2,500 según complejidad: rootkit user-mode básico (€800-1,200), kernel rootkit (€1,200-1,800), bootkit con persistencia UEFI (€1,800-2,500). Incluye análisis técnico, informe pericial y cadena de custodia.
Términos Relacionados
Análisis Forense Digital
Proceso científico de identificación, preservación, análisis y presentación de evidencia digital en procedimientos legales.
Keylogger
Software o hardware que registra todas las pulsaciones de teclado de un usuario, capturando contraseñas, mensajes y toda la actividad escrita. Su detección y análisis es común en casos de espionaje corporativo, acoso y malware.
YARA Rules
Herramienta y lenguaje de reglas para identificar y clasificar malware, archivos sospechosos y patrones específicos en análisis forense digital mediante la definición de firmas basadas en cadenas de texto, bytes y condiciones lógicas.
¿Necesitas un peritaje forense?
Si necesitas ayuda profesional con análisis forense digital, estoy aquí para ayudarte.
Solicitar Consulta Gratuita
