Skip to content

monitor method ebpf

wiki auto updater edited this page Sep 11, 2021 · 2 revisions

Since v1.4.0 the default process monitor method is eBPF.

What is eBPF?

https://ebpf.io/

eBPF is a revolutionary technology with origins in the Linux kernel that can run sandboxed programs in an operating system kernel. It is used to safely and efficiently extend the capabilities of the kernel without requiring to change kernel source code or load kernel modules.

How does it work?

When this method is used, we load an eBPF module (similar to a kernel module) that hooks some kernel functions in order to read and get the parameters (source IP, destination, IP, etc).

https://github.com/evilsocket/opensnitch/tree/master/ebpf_prog

Why is it better to use this process monitor method?

This technology allow us to intercept processes faster and in a more secure way. ProcFS is easier to fool:

We can also intercept connections initiated from kernel space, like those initiated by rootkits or VPNs:

image

WireGuard connection:

image

Read more:

Clone this wiki locally