Tracee - eBPF Runtime Security & Forensics Spickzettel
Tracee ist ein Open-Source eBPF-basiertes Runtime Security und Forensics Tool von Aqua Security. Es nutzt eBPF um Betriebssystem-Events zu tracen — Syscalls, Prozess- und Netzwerk-Aktivität, Datei-Operationen — auf Kernel-Ebene mit niedrigem Overhead, wendet dann eine Bibliothek von VerhaltensSignaturen an um verdächtige oder bösartige Aktivität zur Laufzeit zu erkennen. Es ist für Linux Hosts, Container und Kubernetes gebaut und ist eine starke Ergänzung zu Falco und Tetragon im eBPF Runtime-Security-Raum.
Anforderungen
- Linux Kernel ≥ 5.4 (BTF / CO-RE Support empfohlen; meisten moderne Distros)
- Root / Privilegierter Container (eBPF benötigt erhöhte Fähigkeiten)
Installation
| Methode | Befehl |
|---|
| Docker (am schnellsten) | docker run --name tracee -it --rm --pid=host --cgroupns=host --privileged -v /etc/os-release:/etc/os-release-host:ro aquasec/tracee:latest |
| Kubernetes (Helm) | helm repo add aqua https://aquasecurity.github.io/helm-charts/ && helm install tracee aqua/tracee -n tracee --create-namespace |
| Binary | von GitHub Releases herunterladen, sudo ./tracee ausführen |
| Überprüfung | tracee version |
Grundlegende Verwendung
| Befehl | Beschreibung |
|---|
sudo tracee | Mit Standard-Erkennungs-Signaturen Tracing starten |
sudo tracee --output json | Events als JSON aussenden |
sudo tracee --scope comm=nginx | Nur einen spezifischen Prozess tracen |
sudo tracee --events execve,open | Spezifische Events tracen |
tracee --help | Vollständige Optionsliste |
Event Auswahl (--events)
| Selector | Passt zu |
|---|
--events execve | Prozess-Ausführungen |
--events open,openat | Datei-Öffnungen |
--events net_packet_dns | DNS-Traffic |
--events security_file_open | LSM Datei-Öffnungs-Hook |
--events 'fs' | Ein ganzes Event-Set (Dateisystem) |
--events 'signatures' | Nur Signatur-Erkennungen |
--events execve.args.pathname=/usr/bin/* | Nach Argument-Wert filtern |
Scope Filterung (--scope)
| Selector | Passt zu |
|---|
--scope comm=bash | Nach Befehlsname |
--scope pid=1234 | Nach PID |
--scope container | Nur Container-Events |
--scope container=new | Nur neu gestartete Container |
--scope uid=0 | Root-Aktivität |
--scope pid=new | Neu erstellte Prozesse |
--scope not-container | Nur Host-Events |
Erkennungs-Signaturen
Tracee versendet Verhaltens-Signaturen (Go und Rego) die bekannte Angriffs-Techniken flaggen.
| Beispiel-Erkennung | Technik |
|---|
| Anti-Debugging | Evasion via ptrace |
| Dynamisches Code-Loading | Memory-Resident Payloads |
| LD_PRELOAD | Library Injection |
| Privilege Escalation | setuid/Capability Missbrauch |
| Container Escape | Namespace/Host Zugriff |
| Kernel Module Loading | Rootkit Installation |
| Befehl | Beschreibung |
|---|
sudo tracee --events signatures | Nur Erkennungs-Signaturen ausführen |
--rego- Flags | Benutzerdefinierte Rego-Signaturen laden |
--signatures-dir DIR | Signaturen aus Verzeichnis laden |
Output & Erfassung
| Option | Beschreibung |
|---|
--output json | JSON Events (zu SIEM pipen) |
--output table | Mensch-lesbare Tabelle |
--output gotemplate=FILE.tmpl | Benutzerdefinierte Templated Output |
--capture exec | Ausgeführte Binaries zu Disk erfassen |
--capture mem | Memory-Regionen erfassen (Forensics) |
--capture net | Netzwerk-Traffic pro Event erfassen |
--output forward:tcp://host:port | Events zu Collector forwarden |
Häufige Workflows
# Nur Container-Aktivität beobachten, JSON für SIEM
sudo tracee --scope container --output json | tee tracee-events.json
# Nur Bedrohungen erkennen (Signaturen), Tabellen-Output
sudo tracee --events signatures --output table
# Einen spezifischen Prozess untersuchen und ausgeführte Binaries erfassen
sudo tracee --scope comm=suspicious --capture exec
# DNS made by Containern erkennen (Exfiltrations-Jagd)
sudo tracee --scope container=new --events net_packet_dns
Tracee vs Falco vs Tetragon
| Aspekt | Tracee | Falco | Tetragon |
|---|
| Engine | eBPF (Aqua) | eBPF (CNCF) | eBPF (Cilium) |
| Fokus | Forensics + Erkennung + Erfassung | Alerting/Erkennung | Observability + In-Kernel Enforcement |
| Enforcement | Erkennungs-fokussiert | Erkennung | Ja (Kill/Override) |
| Forensics Erfassung | Stark (Exec/Mem/Net) | Begrenzt | Event-fokussiert |
| Am besten für | Threat Forensics & Erfassung | Reife Regel-Bibliothek | Prevention + tiefe Visibility |
Ressourcen