Saltar al contenido principal
MALWARE#malware#analisis#ghidra#sandbox#reverse-engineering

Análisis de Malware: Técnicas Estáticas y Dinámicas para Principiantes

Aprende las técnicas fundamentales para analizar malware de forma segura: análisis estático con herramientas como Ghidra y análisis dinámico con sandboxes.

4 minCyberSecHub Team

Introducción al Análisis de Malware

El análisis de malware es el proceso de estudiar software malicioso para entender su funcionamiento, propósito, capacidades e indicadores de compromiso (IOCs). Es una habilidad crítica para los equipos de respuesta a incidentes (IR) y los analistas de threat intelligence.

¿Por qué es importante?

  • Identificar el alcance de una infección
  • Desarrollar firmas de detección para antivirus
  • Entender las TTPs (Tácticas, Técnicas y Procedimientos) del atacante
  • Atribuir ataques a grupos conocidos

Entorno Seguro de Análisis

NUNCA analices malware en tu máquina principal. Configura un entorno aislado:

Opción 1: Máquina Virtual aislada

Configuración recomendada:
- VMware Workstation Pro o VirtualBox
- Windows 10 (la mayoría del malware es para Windows)
- Snapshot limpia antes de cada análisis
- Red en modo "Host-Only" o completamente desconectada
- Herramientas de análisis preinstaladas (REMnux, FlareVM)

Opción 2: Sandbox en línea (más seguro para principiantes)

Análisis Estático

El análisis estático estudia el malware sin ejecutarlo, examinando su código y estructura.

1. Identificación básica del archivo

# Tipo de archivo
file malware.exe

# Hash (para buscar en bases de datos)
md5sum malware.exe
sha256sum malware.exe

# Buscar en VirusTotal por hash
curl "https://www.virustotal.com/api/v3/files/{SHA256}" \
  -H "x-apikey: TU_API_KEY"

2. Extracción de strings

# Extraer cadenas de texto visibles
strings malware.exe

# Strings con mayor longitud mínima (reduce ruido)
strings -n 8 malware.exe

# En Linux/Mac, strings Unicode también
strings -el malware.exe

Buscar indicadores como:

  • URLs y dominios (C2 servers)
  • Rutas de registro de Windows
  • Nombres de archivos y procesos
  • Mensajes de error o ransom notes
  • Claves de API o credenciales hardcoded

3. Análisis con Ghidra (desensamblado)

Ghidra es el framework de ingeniería inversa de la NSA, ahora open source:

Pasos básicos:
1. Importar el binario en Ghidra
2. Analizar (Auto Analysis)
3. Buscar función "main" o puntos de entrada
4. Identificar llamadas a APIs del sistema (CreateProcess, RegSetValue, etc.)
5. Renombrar funciones conforme se entiende su propósito

APIs sospechosas comunes en malware:

API Indicador de
CreateRemoteThread Inyección de procesos
VirtualAllocEx Inyección de código
RegSetValue Persistencia en registro
CryptEncrypt Ransomware / cifrado
InternetOpenUrl Comunicación C2
WNetAddConnection Movimiento lateral

Análisis Dinámico

El análisis dinámico ejecuta el malware en un entorno controlado y observa su comportamiento.

Herramientas esenciales

Monitorización de procesos:
- Process Monitor (ProcMon) — Sysinternals
- Process Hacker
- API Monitor

Red:
- Wireshark — captura de tráfico
- FakeNet-NG — simula servicios de red para engañar al malware

Registro:
- Regshot — comparar estado del registro antes/después

Análisis con Process Monitor

Filtros útiles en ProcMon:
Process Name → contiene → malware.exe

Qué observar:
- Archivos creados/modificados (drop de payloads)
- Claves de registro modificadas (persistencia)
- Conexiones de red (C2 communication)
- Procesos hijo creados (spawning)

Indicadores de Compromiso (IOCs)

Al finalizar el análisis, documenta los IOCs:

# Ejemplo de reporte de IOCs
iocs:
  hashes:
    md5: "d41d8cd98f00b204e9800998ecf8427e"
    sha256: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
  
  network:
    domains:
      - "malicious-c2.example.com"
    ips:
      - "192.168.1.100"
    urls:
      - "http://malicious-c2.example.com/beacon"
  
  files:
    - path: "C:\\Windows\\Temp\\payload.exe"
    - path: "C:\\Users\\%USERNAME%\\AppData\\Roaming\\malware.dll"
  
  registry:
    - key: "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run"
      value: "Updater"
      data: "C:\\Windows\\Temp\\malware.exe"

Frameworks de Referencia

Conclusión

El análisis de malware requiere práctica constante. Empieza con muestras simples de plataformas como MalwareBazaar, usa sandboxes online para el análisis dinámico y practica ingeniería inversa con Ghidra sobre binarios simples antes de abordar malware real.

Advertencia: Analizar malware real conlleva riesgos. Si no tienes experiencia, usa exclusivamente sandboxes online o máquinas virtuales completamente aisladas de tu red doméstica.

Libro Recomendado

Practical Malware Analysis

El libro estándar de la industria para análisis de malware. Guía práctica para diseccionar software malicioso usando técnicas estáticas y dinámicas con Ghidra.

Aviso legal: Este contenido es estrictamente educativo. CyberFlows no apoya actividades ilegales. Úsalo solo en entornos autorizados.

REAL-TIME VISITOR LOGS