Malware

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.

13 min de lectura

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:

  1. Ocultar su propia presencia en el sistema infectado
  2. Ocultar otros programas maliciosos (backdoors, keyloggers, troyanos)
  3. Mantener acceso privilegiado persistente para el atacante
  4. 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ísticaMalware tradicionalRootkit
Nivel de accesoUser-mode (limitado)Kernel-mode (privilegiado)
VisibilidadVisible para antivirusOculto activamente
PersistenciaClave de registro RunDriver kernel, MBR, UEFI
DetecciónFirmas tradicionalesAnálisis comportamiento + memoria
EliminaciónDesinstalador estándarHerramientas 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écnicaDescripciónEjemplo
IAT HookingModifica Import Address Table de ejecutablesDesvía llamadas a CreateFile() para ocultar archivos
Inline HookingInserta saltos (JMP) al inicio de funciones APIIntercepta NtQuerySystemInformation() para ocultar procesos
DLL InjectionInyecta código malicioso en procesos legítimosDLL 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écnicaDescripciónImpacto forense
SSDT HookingModifica System Service Descriptor TableIntercepta TODAS las syscalls del sistema
IRP HookingIntercepta I/O Request PacketsOculta archivos a nivel de driver de sistema de archivos
DKOMDirect Kernel Object ManipulationDesvincula procesos de lista EPROCESS sin hooks
Driver firmado falsoUsa certificado robado/revocadoEvade 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 Table scan

3. Bootkits (rootkits de bootloader)

Infectan el proceso de arranque del sistema (MBR, VBR, UEFI):

  1. 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
  2. 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)
  3. 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:

NombreAñoTécnicaEliminación
Rovnix2011MBR + VBR infectionRestauración MBR limpio + formateo
Olmasco2009MBR bootkit + TDL3 driverHerramienta TDSSKiller + rebuild MBR
LoJax2018UEFI 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:

IndicadorDescripciónHerramienta de detección
Procesos fantasmaUso de CPU sin proceso visibleProcess Monitor, System Informer
Conexiones ocultasTráfico de red sin aplicación asociadaTCPView, Wireshark, netstat oculto
Archivos inaccesiblesSectores de disco usados sin archivosDiskView, sector-level analysis
Drivers sospechososDrivers sin firma o firma revocadaAutoruns, sigcheck
Hooks detectablesModificaciones en SSDT/IATGMER, 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 netscan

Hallazgos típicos de rootkit:

  • Proceso con PID 1234 visible en psscan pero no en pslistDKOM ocultación
  • Driver C:\Windows\System32\drivers\svchost.sys sin firma digital → Driver rootkit
  • Hooks en NtQuerySystemInformation apuntando a módulo desconocido → SSDT hook

Escáneres anti-rootkit especializados

HerramientaTipoTécnicas de detecciónLimitaciones
GMERGratuitoSSDT hooks, hidden processes, driversSolo Windows, puede ser detectado por rootkit
RootkitRevealerGratuito (Sysinternals)Discrepancias API alto/bajo nivelObsoleto, no detecta DKOM
Sophos Anti-RootkitGratuitoBehavioral analysis, memory scanYa descontinuado
Malwarebytes Anti-RootkitGratuitoHeuristics + signaturesIntegrado en Malwarebytes comercial
TDSS KillerGratuito (Kaspersky)Especializado en TDL/TDSS bootkitsSolo 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.

Código Penal

Los rootkits son herramientas típicas en delitos informáticos graves:

DelitoArtículoPenaAplicación rootkits
Acceso ilícito a sistemasArt. 197.3 CP2-5 años prisiónRootkit mantiene acceso persistente sin autorización
Daños informáticosArt. 264.2 CP1-3 años prisiónModificación kernel causa daños graves al sistema
Interceptación comunicacionesArt. 197.1 CP1-4 años prisiónRootkits con keylogger/sniffers interceptan datos
Sabotaje informáticoArt. 264 bis CP4-8 años prisiónRootkit 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:

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íaHerramientaPlataformaUso forense
Memoria forenseVolatility 3Windows/Linux/macOSAnálisis RAM, detección DKOM, hooks
Anti-rootkitGMERWindowsEscaneo SSDT, hidden processes, services
Bootkit detectionTDSS KillerWindowsEspecializado en MBR/VBR rootkits
Drivers analysisDriverViewWindowsLista drivers cargados, firma digital
Live analysisSystem InformerWindowsReemplazo Task Manager, detect hooks
Disk forensicsFTK ImagerWindowsAnálisis sector-level, MBR inspection
UEFI forensicsCHIPSECWindows/LinuxAnálisis firmware, UEFI rootkits

Metodología forense completa

  1. 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
  2. Análisis de memoria

    • Volatility: pslist, psscan, ssdt, driverscan, malfind
    • Detectar procesos ocultos, hooks, drivers sospechosos
    • Extraer ejecutables desde RAM (procdump, moddump)
  3. 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
  4. 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
  5. 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

FaseDuraciónTécnicasDescubrimientos
Triage inicial2 horasLogs antivirus, Process Monitor3 estaciones de trabajo con comportamiento anómalo
Captura evidencia4 horasVolcado RAM (3 equipos), clonado discos48 GB memoria + 2.4 TB discos
Análisis memoria12 horasVolatility (pslist, psscan, malfind)Rootkit user-mode detectado: DLL inyectada en explorer.exe
Análisis estático8 horasIDA Pro, PEStudioDLL rootkit ocultaba proceso dwm.exe (falso, no era Desktop Window Manager)
Análisis dinámico10 horasCuckoo Sandbox, WiresharkExfiltración a 185.220.102.XX via HTTPS cifrado, 1.2 GB archivos .dwg
Atribución6 horasOSINT, análisis IP, correlaciónServidor 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:

  1. Monitorear carpeta C:\Proyectos\ con FileSystemWatcher
  2. Comprimir archivos .dwg en lotes de 50 MB
  3. Cifrar con AES-256 (clave hardcoded en DLL)
  4. Exfiltrar via POST HTTPS a servidor C2
  5. Ocultarse de Task Manager y Process Explorer

Evidencia judicial

Informe pericial de 94 páginas con:

  1. Análisis de memoria RAM: Detección proceso oculto con Volatility
  2. Extracción de DLL rootkit: Hash SHA-256, análisis desensamblado
  3. Timeline de exfiltración: 47 sesiones en 3 meses, 1.2 GB CAD files
  4. Atribución técnica: Servidor C2 registrado con email del ex-empleado
  5. 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

ControlImplementaciónEfectividad contra rootkits
Secure BootUEFI con firmas digitales verificadas✅ Bloquea bootkits (MBR/UEFI)
Driver Signature EnforcementSolo drivers firmados por Microsoft✅ Previene kernel rootkits
Virtualization-Based SecurityWindows Defender System Guard✅ Aísla kernel en hypervisor
EDR con análisis de memoriaCrowdStrike, SentinelOne, Microsoft Defender ATP✅ Detecta rootkits en tiempo real
Integrity MonitoringAIDE, Tripwire, OSSEC⚠️ Detecta cambios en archivos del sistema
Least PrivilegeUsuarios 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.

¿Necesitas un peritaje forense?

Si necesitas ayuda profesional con análisis forense digital, estoy aquí para ayudarte.

Solicitar Consulta Gratuita
Jonathan Izquierdo

Jonathan Izquierdo · Perito Forense

+15 años experiencia · AWS Certified

WhatsApp