
eBPF-basierter Linux-Sicherheitsmonitor und Bedrohungsjäger, der chronologisch geordnete, containerbewusste Ereignisse mit On-Host-Korrelation für Incident Response und forensische Analyse bereitstellt.
Kunai ist ein leistungsstarkes Tool, das umsetzbare Erkenntnisse für Aufgaben wie Sicherheitsüberwachung und Threat Hunting auf Linux-Systemen liefern soll. Betrachten Sie es als das Linux-Gegenstück zu Sysmon unter Windows, maßgeschneidert für eine umfassende und präzise Ereignisüberwachung.
Kunai nutzt die eBPF-Technologie (Extended Berkeley Packet Filter) mit Kernel-Level-Probes, die kritische Ereignisse erfassen. Diese Probes senden Daten an ein Userland-Programm, das für Aufgaben wie Neuordnung, Anreicherung und Korrelation der gesammelten Ereignisse zuständig ist.
Auf der Implementierungsseite ist Kunai überwiegend in Rust geschrieben und verwendet die robuste Aya-Bibliothek. Dieses Design gewährleistet eine eigenständige, alleinstehende Binärdatei, die sowohl die eBPF-Probes als auch die Userland-Verarbeitungslogik für eine einfache Bereitstellung enthält.
Bitte beachten Sie, dass eine distributionsunabhängige, vorkompilierte Version von Kunai auf der Release-Seite verfügbar ist. Wenn Sie Kunai einfach nur ausprobieren möchten, müssen Sie das Projekt wahrscheinlich nicht selbst bauen.
Sie können ein Docker-Image verwenden, das alles enthält, was zum einfachen Bauen des Projekts benötigt wird: Kunai-Build-Docker-Image.
Diese Einheitslösung sollte auf jeder Linux-Distribution funktionieren.
Bevor Sie alles bauen können, müssen Sie einige Tools installieren.
rustupclang, libbpf-dev und bpf-linkerBeispiel für Befehle zur Installation der Voraussetzungen unter Ubuntu/Debian:
sudo apt update
sudo apt install -y clang libbpf-dev lld musl-tools
# unter der Annahme, dass rustup und cargo installiert sind
cargo install bpf-linker
Sobald Sie die Voraussetzungen installiert haben, kann es losgehen.
cargo build
# Ihre ausführbare Datei finden Sie unter: ./target/debug/kunai
Für den Produktionseinsatz empfehlen wir, eine statische Binärdatei mit MUSL zu bauen:
# Statische Release-Binärdatei bauen
cargo build --release --target x86_64-unknown-linux-musl
# Die statische Binärdatei ist verfügbar unter:
./target/x86_64-unknown-linux-musl/release/kunai
Warum MUSL? MUSL erzeugt statische Binärdateien, die über verschiedene Linux-Distributionen hinweg portabler sind und Abhängigkeitsprobleme mit glibc-Versionen vermeiden. Dies ist besonders wichtig für den Produktionseinsatz, wenn Sie die Zielumgebung möglicherweise nicht kontrollieren.
Um Kunai für aarch64 zu cross-kompilieren:
Fügen Sie das aarch64-musl-Target hinzu:
rustup target add aarch64-unknown-linux-musl
Installieren Sie die Cross-Kompilierungs-Toolchain (Ubuntu/Debian-Beispiel):
sudo dpkg --add-architecture arm64
sudo apt update
sudo apt install -y git clang libbpf-dev lld musl-tools
sudo apt install -y crossbuild-essential-arm64 musl-tools:arm64
Für aarch64 bauen:
cargo build --release --target aarch64-unknown-linux-musl
Die cross-kompilierte Binärdatei ist verfügbar unter:
./target/aarch64-unknown-linux-musl/release/kunai
Falls jemand glaubt, Kunai habe ein Problem mit dem Arbeitsspeicher, gibt es hier eine Möglichkeit, es zu profilieren.
# Kunai mit Debug-Informationen für alle Pakete kompilieren
RUSTFLAGS="-g" cargo build
# heaptrack verwenden
sudo heaptrack kunai
Sysmon For Linux: https://github.com/Sysinternals/SysmonForLinux
Das NGSOTI-Projekt widmet sich der Ausbildung der nächsten Generation von Security Operation Center (SOC)-Operatoren, mit Fokus auf den menschlichen Aspekt der Cybersicherheit. Es unterstreicht die Bedeutung, SOC-Operatoren mit den notwendigen Fähigkeiten und Open-Source-Tools auszustatten, um Herausforderungen wie Detection Engineering, Incident Response und Threat-Intelligence-Analyse zu bewältigen. Unter Beteiligung wichtiger Partner wie CIRCL, Restena, Tenzir und der Universität Luxemburg zielt das Projekt darauf ab, eine echte operative Infrastruktur für praktische Schulungen aufzubauen. Diese Initiative integriert akademische Lehrpläne mit Brancheneinblicken und bietet praktische Erfahrung in Cyber Ranges.
NGSOTI wird kofinanziert durch das Digital Europe Programme (DEP) über das ECCC (European cybersecurity competence network and competence centre).