Begriff
Tetragon
Warum wichtig?
Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.
Security-Kameras für deinen Kubernetes-Kernel.
Tools wie Falco schauen auf System-Calls ("Jemand hat Datei X geöffnet").
Tetragon (von den Cilium-Machern) geht tiefer.
Es nutzt eBPF, um direkt in die Datenstrukturen des Kernels zu schauen.
Es kann Angriffe nicht nur sehen, sondern auch stoppen (Enforcement).
Wenn ein Hacker versucht, /etc/shadow zu öffnen, kann Tetragon den Prozess töten (SIGKILL), bevor der Zugriff passiert.
Es weiß genau: "Dieser Prozess gehört zu Pod X, Container Y, Namespace Z."
Merksatz: Ein eBPF-basiertes Security-Observability- und Enforcement-Tool, das tiefgehende Einblicke in Laufzeitprozesse bietet und bösartige Aktivitäten (wie File-Access oder Privilege Escalation) in Echtzeit blockieren kann.
Als "Sicherheitsgurt" im Cluster.
Du definierst "Tracing Policies" (YAML).
Beispiel: "In meinem Nginx-Container darf niemand eine Shell (/bin/bash) starten."
Wenn es jemand versucht -> Kill.
Tetragon loggt alles als JSON (wer, wann, welche Datei, welche Argumente), perfekt für Forensik (SIEM).
1. Synchrones Enforcement
Viele Tools sind asynchron: Sie sehen das Event im Log und alarmieren. Zu spät. Tetragon hängt sich via eBPF kprobe direkt in die Kernel-Funktion. Es kann den Return-Code manipulieren ("Access Denied") oder das Signal senden, während der System-Call noch läuft.
2. Performance
Da es im Kernel filtert (In-Kernel Filtering), muss es nicht Terabytes an Events in den Userspace kopieren.
Es sendet nur das, was relevant ist. Extrem geringer Overhead im Vergleich zu auditd oder ptrace.
1. BPF LSM (Linux Security Modules)
Tetragon nutzt den neuesten Schrei in der Linux-Security: BPF LSM.
Normalerweise sind Security-Module (wie SELinux) fest im Kernel verbaut. BPF LSM erlaubt es, eBPF-Code in die Security-Hooks des Kernels zu laden.
Tetragon kann so direkt im security_file_open-Hook sitzen.
Der Vorteil: Man hat vollen Zugriff auf den LSM-Kontext und kann Entscheidungen treffen, bevor der Kernel überhaupt prüft, ob der User die Berechtigung hat. Das ist "Programmable Security" auf höchstem Niveau.
2. Signal Injection & SIGKILL
Wie stoppt Tetragon einen Angriff wirklich?
Es nutzt eBPF Helper-Funktionen wie bpf_send_signal.
Wenn die Policy verletzt wird, triggert der eBPF-Filter sofort ein Signal.
Das passiert im Prozess-Kontext. Die CPU wechselt nicht erst zum User-Agent von Tetragon; sie unterbricht die Ausführung des bösartigen System-Calls und räumt den Prozess sofort ab. In der Produktion verhindert dies "Time-of-Check to Time-of-Use" (TOCTOU) Exploits, bei denen ein Angreifer Daten zwischen Prüfung und Zugriff ändert.
3. Cilium Identity Propagation
Tetragon ist "Identity Aware".
Es integriert sich in die Cilium-Steuerplane. Jedes Paket und jeder Prozess bekommt eine numerische ID, die für den gesamten Cluster gilt.
Ein Security-Event in Tetragon hat also Metadaten wie: Source Identity: 504 (Frontend-App).
Das erlaubt es, globale Security-Dashboards zu bauen, die nicht auf instabilen IP-Adressen basieren, sondern auf dem kryptografisch verifizierten Namen der Applikation. Tetragon schließt so die Lücke zwischen Netzwerk-Security (Cilium) und Host-Security (eBPF).
Quick-Check
Unterschied zu Falco?
Falco ist der Marktführer, nutzt auch eBPF (oder Kernel Module). Tetragon ist neuer, spezialisierter auf "Prevention" (Kill) und tiefe eBPF-Integration mit Cilium Identitäten. Beide sind gut.Namespace Awareness?
Crucial für K8s. Ein normales Linux-Tool sieht "PID 1234 hat Datei geöffnet". Tetragon sagt "Pod frontend-7b4c, Container nginx hat Datei geöffnet".Transparent?
Du musst die App nicht ändern. Tetragon läuft als DaemonSet auf jedem Node und überwacht den Kernel.