CiberPTY/insights ← Volver al sitio
BLUE TEAM2026.04.18·8 min de lectura

Detección de living-off-the-land binaries con Wazuh

Cómo escribir reglas custom para detectar abuso de utilidades nativas de Windows (certutil, mshta, rundll32) sin generar falsos positivos en endpoints administrativos.

El problema

Los atacantes modernos no traen sus propias herramientas. Usan binarios firmados por Microsoft que ya están en el sistema — certutil.exe, mshta.exe, rundll32.exe, regsvr32.exe. Esto se conoce como LOLBin (Living Off the Land Binaries) y es la columna vertebral de campañas modernas como las documentadas en MITRE ATT&CK bajo T1218.

El reto: estos mismos binarios son usados legítimamente por administradores y procesos del sistema cientos de veces al día. Bloquearlos por completo rompe la operación. Necesitamos detección con contexto.

Estrategia de detección

En Wazuh, la mejor superficie es Sysmon (event ID 1: process creation) correlacionado con la línea de comando completa y el padre que invoca el binario. Aquí un ejemplo de regla custom para detectar certutil descargando archivos remotos:

<group name="windows,sysmon,lolbin,">
  <rule id="100210" level="12">
    <if_sid>61603</if_sid>
    <field name="win.eventdata.image">certutil\.exe$</field>
    <field name="win.eventdata.commandLine" type="pcre2">
      (?i)(-urlcache|-decode|-encode).*?(http|ftp)
    </field>
    <description>LOLBIN: certutil downloading from remote URL</description>
    <mitre>
      <id>T1218</id>
      <id>T1105</id>
    </mitre>
  </rule>
</group>

Reduciendo falsos positivos

El truco está en correlacionar el padre. certutil invocado por cmd.exe que a su vez fue invocado por winword.exe es altamente sospechoso. certutil invocado por SCCM o System Center es probablemente legítimo.

<rule id="100211" level="14">
  <if_sid>100210</if_sid>
  <field name="win.eventdata.parentImage" type="pcre2">
    (?i)(winword|excel|powerpnt|outlook|msaccess)\.exe$
  </field>
  <description>CRITICAL: Office spawned LOLBIN with download</description>
</rule>
Nota operativa Antes de promover estas reglas a producción, ejecuta 7 días en modo silencioso (level 3) y construye una baseline. La mayoría de equipos descubren que rundll32.exe es invocado legítimamente por agentes EDR, antivirus y herramientas de inventario.

Binarios prioritarios para vigilar

Integración con n8n para triage

Cuando una alerta level 12+ se dispara, encadenamos un workflow en n8n que enriquece el evento con: VirusTotal, AbuseIPDB, contexto del usuario en LDAP, y procesos hijos en los siguientes 60 segundos. El resultado se postea a un canal privado de Slack con un botón de "aislar host" que ejecuta vía API el agente de Wazuh.

Una regla buena no es la que detecta más; es la que detecta lo que importa con el menor ruido posible.

Métricas reales después de 90 días


Si quieres aplicar este patrón en tu SOC o construir reglas custom para tu stack específico, agenda una conversación de diagnóstico.

→ Solicitar diagnóstico