
Monitor di sicurezza Linux basato su eBPF e cacciatore di minacce che fornisce eventi cronologicamente ordinati, consapevoli dei container, con correlazione sull'host per risposta agli incidenti e analisi forense.
Kunai è un potente strumento progettato per fornire informazioni utilizzabili per attività come il monitoraggio della sicurezza e la caccia alle minacce sui sistemi Linux. Pensalo come l'equivalente Linux di Sysmon su Windows, adattato per un monitoraggio completo e preciso degli eventi.
Kunai sfrutta la tecnologia eBPF (Extended Berkeley Packet Filter), con sonde a livello kernel che catturano eventi critici. Queste sonde inviano dati a un programma in spazio utente, responsabile di attività come il riordino, l'arricchimento e la correlazione degli eventi raccolti. Dal punto di vista implementativo, Kunai è scritto prevalentemente in Rust, utilizzando la robusta libreria Aya. Questo design garantisce un binario standalone autonomo, che incorpora sia le sonde eBPF che la logica di elaborazione in spazio utente per facilità di distribuzione.
Prima di procedere, tieni presente che una versione precompilata e indipendente dalla distribuzione di Kunai è disponibile nella pagina delle release. Se vuoi semplicemente provare Kunai, probabilmente non hai bisogno di costruire il progetto da solo.
Puoi usare un'immagine Docker che include tutto il necessario per costruire il progetto facilmente: Kunai build docker image.
Questa soluzione universale dovrebbe funzionare su qualsiasi distribuzione Linux.
Prima di poter costruire tutto, devi installare un paio di strumenti.
rustupclang, libbpf-dev e bpf-linkerEsempio di comandi per installare i prerequisiti su Ubuntu/Debian:
sudo apt update
sudo apt install -y clang libbpf-dev lld musl-tools
# assuming you have rustup and cargo installed
cargo install bpf-linker
Una volta installati i prerequisiti, sei pronto per partire.
cargo build
# find your executable in: ./target/debug/kunai
Per il deployment in produzione, consigliamo di costruire un binario statico usando MUSL:
# Build static release binary
cargo build --release --target x86_64-unknown-linux-musl
# The static binary will be available at:
./target/x86_64-unknown-linux-musl/release/kunai
Perché MUSL? MUSL produce binari statici più portabili tra diverse distribuzioni Linux, evitando problemi di dipendenza con le versioni di glibc. Questo è particolarmente importante per il deployment in produzione dove potresti non controllare l'ambiente di destinazione.
Per cross-compilare kunai per aarch64:
Installa il target aarch64 musl:
rustup target add aarch64-unknown-linux-musl
Installa la toolchain di cross-compilazione (esempio Ubuntu/Debian):
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
Compila per aarch64:
cargo build --release --target aarch64-unknown-linux-musl
Il binario cross-compilato sarà disponibile in:
./target/aarch64-unknown-linux-musl/release/kunai
Se si ritiene che Kunai abbia un problema di memoria, ecco un modo per profilarlo.
# compile kunai with debug information for all packages
RUSTFLAGS="-g" cargo build
# use heaptrack
sudo heaptrack kunai
Sysmon For Linux: https://github.com/Sysinternals/SysmonForLinux
Il progetto NGSOTI è dedicato alla formazione della prossima generazione di operatori del Security Operation Center (SOC), concentrandosi sull'aspetto umano della cybersecurity. Sottolinea l'importanza di fornire agli operatori SOC le competenze necessarie e gli strumenti open-source per affrontare sfide come l'ingegneria del rilevamento, la risposta agli incidenti e l'analisi dell'intelligence sulle minacce. Coinvolgendo partner chiave come CIRCL, Restena, Tenzir e l'Università del Lussemburgo, il progetto mira a creare un'infrastruttura operativa reale per la formazione pratica. Questa iniziativa integra i curricula accademici con le conoscenze del settore, offrendo esperienza pratica in cyber range. NGSOTI è cofinanziato nell'ambito del Digital Europe Programme (DEP) tramite l'ECCC (rete e centro di competenza europea per la cybersecurity).