eBPF-Compiler härten

Geringes Risiko In IbexWall standardmäßig angehakt Katalog geprüft: 2026-11-05

Macht den Code, den der eBPF-Compiler erzeugt, schwerer missbrauchbar für Angriffe, die gewählte Anweisungen einschleusen.

Warum es wichtig ist

eBPF-Programme werden von einem Just-in-time-Compiler in Maschinencode übersetzt. Ein Angreifer, der ein Programm laden kann, fügt so Konstanten ein, dass sie, von einem anderen Versatz gelesen, zu selbstgewählten Befehlen werden. Das nennt man JIT spraying, und die Härtung soll es verhindern.

Wie es funktioniert

Setzt net.core.bpf_jit_harden auf 2. Härtungen wie das Verblenden von Konstanten gelten dann für eBPF-Programme aller Benutzer, nicht nur der unprivilegierten. Die Kernel-Dokumentation weist auf einen gewissen Performance-Aufwand hin, wenn der JIT benutzt wird.

Für wen es sich eignet

Eine billige Vorsicht für fast alle. Hosts mit schwerer eBPF-Paketverarbeitung, denen jedes Bit Geschwindigkeit zählt, messen lieber vorher.

Was Sie bemerken könnten

Meist nichts. eBPF-Programme können geringfügig langsamer laufen, was nur bei stark belasteten Netzwerk- oder Tracing-Setups auffällt.

Auf Ihrem Computer prüfen

Den aktuellen Wert lesen:

sysctl net.core.bpf_jit_harden

Ein strengerer Wert als dieser ist ebenfalls in Ordnung.

Von Hand anwenden

Jetzt setzen (bis zum nächsten Neustart):

sudo sysctl -w net.core.bpf_jit_harden=2

Nach Neustarts beibehalten, in einer eigenen Datei:

sudo tee /etc/sysctl.d/90-kernel-bpf-jit-harden.conf <<'EOF'
net.core.bpf_jit_harden = 2
EOF
sudo sysctl --system

Rückgängig machen

Entfernen Sie die Datei und starten Sie neu, oder setzen Sie den alten Wert mit sysctl -w zurück.

Verwandte Einstellungen

Quellen

Linux Hardening Guide (madaidans)
2.2.1
Linux kernel documentation
net.core.bpf_jit_harden