units/systemd-udevd: allow bpf() syscall
authorMaciek Borzecki <maciek.borzecki@gmail.com>
Tue, 30 Nov 2021 10:07:30 +0000 (11:07 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 7 Dec 2021 06:37:54 +0000 (07:37 +0100)
commit0ddd608a6ddcd095d378510c7096ee979741046d
tree96f5f02b95c22f87d3384d1c12b9878aab92412d
parentf66d548c1aa54bb6e9514e7e281c83bd2a8128b6
units/systemd-udevd: allow bpf() syscall

Programs run by udev triggers may need to execute the bpf() syscall. Even more
so, since on a cgroup v2 system, the only way to set up device access filtering
is to install a BPF program on the cgroup in question and one way of passing
data to such program is through BPF maps, which can only be access using the
bpf() syscall. One such use case was identified in RHBZ#2025264 related to
snap-device-helper, and led to RHBZ#2027627 being filed.

Unfortunately there is no finer grained control over what gets passed in the
syscall, so just enable bpf() and leave fine grained mediation to other
security layers (eg. SELinux).

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2027627

Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com>
units/systemd-udevd.service.in