OPSEC

DFIR en Linux: Triaje en Vivo con UAC y Velociraptor

Por Equipe Basilisk ·

Como el equipo Basilisk hace triaje en vivo en hosts Linux comprometidos usando UAC y Velociraptor sin destruir evidencia volatil.

Tres de la manana, un Debian 12 expone un cron sospechoso que reescribe /etc/ld.so.preload cada 90 segundos. El reflejo equivocado seria apagar la maquina; el correcto es abrir el runbook de triaje y capturar el estado vivo antes de que el atacante note la luz encendida. En Basilisk este escenario aparece cada mes en laboratorios de simulacion, y la regla es simple: orden de volatilidad primero, hipotesis despues. Memoria, conexiones, procesos, descriptores de archivo abiertos y modulos del kernel son prioridad absoluta, porque un reboot o un `kill -9` mal colocado destruye el 80% de lo que importa.

Nuestra caja de herramientas estandar empieza con UAC (Unix-like Artifacts Collector) de Tulpa Security y Velociraptor de Rapid7. UAC es perfecto para triaje one-shot offline: subes un tar.gz de ~6MB, ejecutas `./uac -p ir_triage /mnt/evidencia`, y en 8 a 15 minutos tienes hashes, dump de /proc, journald, bash_history de todos los usuarios, listado de cron y configuracion de SSH comprimidas. Velociraptor brilla cuando hay que correr VQL en flota: ciento veinte hosts en una DMZ, hunt orquestada, artefactos `Linux.Sys.BashHistory` y `Linux.Detection.Yara.Process` corriendo en paralelo. Si aun no montaste el lab base, conviene revisar Pentest Web desde Cero: Montando un Lab Seguro con DVWA, Juice Shop y Burp Suite antes de simular incidentes reales.

La captura de memoria sigue siendo el punto mas fragil en Linux. En kernel 6.x, AVML de Microsoft Research es la opcion mas consistente cuando LiME falla al compilar contra cabeceras ausentes. Comando real: `avml --compress /evidencia/memdump.lime`. Reserva al menos el doble de RAM en disco y nunca escribas en el disco de la victima; usa un NFS read-write montado en /mnt/triagem o un USB cifrado con LUKS. Despues del volcado, el analisis va a Volatility 3 con profile autodetectado, y ahi el pipeline conecta con Memory Forensics con Volatility 3: Analizando Dumps en Lab Reproducible. Sin dump de memoria, cualquier rootkit LD_PRELOAD queda como leyenda urbana en el informe.

La persistencia en Linux casi nunca vive en un solo lugar. En casos recientes de mineros Kinsing encontramos cuatro vectores simultaneos: unit systemd en /etc/systemd/system/.cache.service, entrada en el crontab de root, modificacion de /etc/rc.local y un wrapper en /usr/local/sbin/ssh con SUID. UAC los recoge con el profile `ir_triage`, pero conviene correr manualmente `find / -newermt '2026-06-01' -type f -mtime -8 2>/dev/null` para cerrar huecos. Para correlacionar con tecnicas Windows equivalentes, el equipo consulta Persistencia en Windows: 10 Tecnicas Documentadas y sus Contramedidas, porque los atacantes oportunistas reutilizan patrones entre plataformas.

Velociraptor cambia el juego cuando salimos de un host hacia una flota. Levantamos un servidor en t3.medium, generamos clientes Linux con `velociraptor config client`, los distribuimos via Ansible y en 20 minutos tenemos visibilidad. Las hunts mas utiles en nuestro playbook son `Linux.Network.NetstatEnriched` para sesiones activas, `Linux.Sys.SUID` para binarios sospechosos y una regla Yara compilada con firmas de Pupy, Sliver y Merlin. Cuando el IOC pega, exportamos collection zip firmado y vamos a analisis estatico en sandbox aislada, como se describe en Analisis de Malware en Lab Aislado: Setup Seguro con FlareVM y REMnux. El secreto es nunca saltarse el hashing SHA-256 antes de mover artefactos.

El threat hunting post-triaje cierra el ciclo. Convertimos las detecciones en reglas Sigma y las empujamos a Elastic, transformando el incidente en capacidad defensiva permanente, flujo detallado en Threat Hunting con Sigma y Elastic: Del Indicador a la Regla de Deteccion. Tambien documentamos cada decision en chain of custody con timestamp UTC, hash y operador, porque incluso en lab la disciplina genera musculo para el caso real. Para hosts que sobreviven al incidente, aplicamos hardening siguiendo Hardening de Linux Server: CIS Benchmark Aplicado sin Romper Produccion y revisamos SSH conforme Hardening de SSH 2026: Algoritmos, Certificados y Bastion Hosts antes de devolverlos a produccion simulada.

Takeaway practico: arma hoy un pendrive LUKS con UAC, AVML y cliente Velociraptor preconfigurado contra tu servidor de hunt. Pruebalo en una VM Debian limpia, cronometra, ajusta el profile y versiona el tar.gz en tu repositorio interno. Cuando el pager suene a las 3 de la manana no querras estar leyendo documentacion, querras estar recolectando evidencia. El triaje en vivo no es arte, es checklist disciplinado ejecutado bajo presion.

Nenhum comentário ainda

Seja o primeiro a comentar.

Deixe seu comentário

Entre com sua conta Canverly para comentar. Você pode usar a mesma conta em qualquer site da rede.

Entrar com Canverly