# que coman tierra

taller de seguridad ofensiva y defensiva sobre LOLBins y ransomware sin malware.

el nombre viene de la sensación que te da descubrir que un atacante cifró tus servidores enteros sin instalar absolutamente nada.

---

## de qué va esto

los atacantes modernos no necesitan droppers ni ejecutables sospechosos. usan las herramientas que ya vienen en cualquier linux: `openssl`, `find`, `xargs`, `shred`, `cron`. eso se llama "living off the land" y es exactamente por qué el antivirus no sirve de nada contra esto.

en este taller construimos un ransomware funcional con solo binarios del sistema, lo ejecutamos en lab, medimos qué tan rápido destruye archivos y después aprendemos a detectarlo y frenarlo.

---

## estructura

```
QueComanTierra/
  ransomware/
    loader.sh          -- script principal, orquesta todo el ataque
    xargs_ransom.sh    -- versión paralela con xargs -P (cifrado rápido)
    noxargs_ransom.sh  -- versión secuencial para comparar tiempos
    tarbulk.sh         -- variante que cifra todo como un solo blob (< 10s)
  scripts/
    getkeys.sh         -- generación y manejo de claves efímeras
    stealdata.sh       -- exfiltración de la clave al C2
  detection/
    falco_rules.yaml   -- reglas falco para detectar el comportamiento en runtime
    falco.yaml         -- config para falco
    auditd_rules.rules -- reglas para auditd
  slides/
    slides.md          -- fuente de la presentación (pandoc/reveal.js)
    slides.pptx        -- presentación compilada
    estructura.md      -- notas de estructura del taller
    notas.md           -- notas del instructor
  press/
    Tierra.jpg         -- imagen de portada
    Tierra.pdf         -- material de prensa/flyer
```

---

## módulos del taller

1. **el problema invisible** -- qué son los LOLBins y por qué los AV no los paran
2. **el arsenal del sistema** -- `openssl`, `find`, `xargs`, `shred`, `cron` como armas
3. **anatomía de un ataque** -- las 7 fases: reconocimiento, clave, cifrado, destrucción, exfiltración, rescate, persistencia
4. **lab: preparando el plato** -- ejercicios hands-on en VM aislada
5. **defensa: cómo no comer tierra** -- auditd, falco, backups inmutables, mínimo privilegio, runbook de respuesta
6. **cierre** -- recursos y tarea

---

## el lab en números

en un servidor real con `xargs -P 36`:

| variante | archivos | tiempo | ventana de detección |
|---|---|---|---|
| `while` loop | 3.301 | 13m 40s | tienes tiempo de actuar |
| `xargs -P 36` | 3.301 | 1m 49s | necesitas detección automática |
| `tar + openssl` | 3.470 | 4.5s | cuando llegas ya terminó |

el punto del ejercicio es que el `tarbulk` no se puede parar en runtime, solo antes.

---

## requisitos para el lab

- VM ubuntu/debian aislada (sin red real, en serio)
- snapshot limpio para restaurar entre ejercicios
- usuario no-root con home poblado de archivos de prueba
- herramientas: `openssl`, `find`, `xargs`, `shred`, `auditd`, opcionalmente `falco`

**nunca ejecutar los scripts fuera de la VM de lab.**

---

## compilar las slides

```bash
# pptx con plantilla corporativa
pandoc slides/slides.md -t pptx \
  --reference-doc="redteam_ref.pptx" \
  -o slides/slides.pptx

# reveal.js para presentar en browser
pandoc slides/slides.md -t revealjs -s \
  --highlight-style=monokai \
  -o slides/slides.html
```

o usar el script incluido:

```bash
cd slides && ./compile.sh
```

---

## referencias

- gtfobins -- catálogo de LOLBins en linux
- lolbas -- equivalente para windows
- mitre att&ck t1486 -- data encrypted for impact
- github.com/neo23x0/auditd -- reglas auditd listas para usar

---

## contexto legal

este material es exclusivamente para uso educativo en entornos controlados. los scripts están documentados para que se entienda cómo funcionan los ataques y cómo detectarlos, no para uso ofensivo real. ejecutar esto fuera de un lab autorizado es ilegal.

---

*2026*
