Saltearse al contenido

Fundamentos de malware

El malware (software malicioso) es cualquier programa diseñado para dañar, espiar, extorsionar o tomar control de un sistema sin consentimiento. Entenderlo es clave tanto para el red team (saber cómo opera un adversario para emularlo en ejercicios autorizados) como para el blue team (detectarlo, analizarlo y responder). Esta área se centra en comprender las técnicas y, sobre todo, en analizar muestras de forma segura: el análisis de malware es una disciplina defensiva fundamental.

Virus / Gusano se replica (virus necesita huésped; gusano se propaga solo por red)
Troyano se disfraza de software legítimo
RAT Remote Access Trojan: control remoto del equipo
Ransomware cifra los datos y pide rescate (ver mal-ransomware)
Infostealer roba credenciales, cookies, carteras de cripto
Keylogger / Spyware registra pulsaciones / espía actividad
Rootkit / Bootkit oculta su presencia a nivel profundo del sistema
Loader / Dropper descarga/ejecuta otro payload (primera fase)
Botnet red de equipos infectados controlados por un C2 (ver mal-c2)
Wiper destruye datos (no pide rescate; sabotaje)
1. Entrega phishing, exploit, descarga, USB (ver ingeniería social)
2. Ejecución el código se ejecuta (a menudo loader/dropper -> payload)
3. Evasión evitar AV/EDR (ver mal-evasion, mal-obfus)
4. Persistencia sobrevivir a reinicios (ver mal-persist)
5. C2 comunicación con el atacante (ver mal-c2)
6. Acción robo, cifrado, espionaje, propagación lateral
  • Ofensiva / Red Team: en ejercicios autorizados, se emulan TTPs de adversarios reales (frameworks C2, loaders, evasión) para probar las defensas. El objetivo es medir detección y respuesta, no causar daño.
  • Análisis / Blue Team: ante una muestra sospechosa, el analista determina qué hace, cómo, y cómo detectarla/contenerla. Es la aplicación directa del reversing (ver Introducción al reversing).

Esta wiki prioriza el análisis y la comprensión de las técnicas para defenderse; el uso ofensivo se limita a entornos autorizados (red team con scope).

Analizar malware implica manipular (y a veces ejecutar) código peligroso. Nunca en tu máquina real:

# laboratorio aislado
VM dedicada (snapshots), red aislada o simulada
REMnux distro Linux para análisis de malware (herramientas preinstaladas)
FLARE VM entorno Windows para análisis (Mandiant)
# red simulada para análisis dinámico (ver mal-dynamic)
INetSim / FakeNet fingen Internet para capturar lo que el malware intenta contactar
# nunca conectar el lab a tu red/Internet real sin control
1. Triaje hash, VirusTotal, tipo de fichero, strings (sin ejecutar)
2. Estático desensamblar/decompilar, imports, strings cifradas (ver mal-static)
3. Dinámico ejecutar en sandbox aislada, observar comportamiento (ver mal-dynamic)
4. Desofuscar sortear packing/ofuscación (ver mal-obfus)
5. Extraer IOCs dominios/IPs C2, hashes, mutexes, claves de registro
6. Firmas escribir reglas YARA/Sigma para detección (ver mal-yara)
7. Informe TTPs (mapear a MITRE ATT&CK), IOCs, remediación
  • EDR/AV modernos (detección por comportamiento, no solo firmas), application allowlisting (AppLocker/WDAC).
  • Segmentación, mínimo privilegio, parcheo (cierra vías de entrada), copias de seguridad offline (ver Ransomware (análisis y defensa)).
  • Threat intelligence: consumir IOCs y TTPs; detección por comportamiento (Sigma, EDR) más que por hash.
  • Formación anti-phishing (vector de entrada nº1), MFA, y un proceso de respuesta a incidentes (ver dfir).