[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191007162103.39395-1-sdf@google.com>
Date: Mon, 7 Oct 2019 09:21:01 -0700
From: Stanislav Fomichev <sdf@...gle.com>
To: netdev@...r.kernel.org, bpf@...r.kernel.org
Cc: davem@...emloft.net, ast@...nel.org, daniel@...earbox.net,
Stanislav Fomichev <sdf@...gle.com>,
Petar Penkov <ppenkov@...gle.com>
Subject: [PATCH bpf-next v3 0/2] bpf/flow_dissector: add mode to enforce
global BPF flow dissector
While having a per-net-ns flow dissector programs is convenient for
testing, security-wise it's better to have only one vetted global
flow dissector implementation.
Let's have a convention that when BPF flow dissector is installed
in the root namespace, child namespaces can't override it.
The intended use-case is to attach global BPF flow dissector
early from the init scripts/systemd. Attaching global dissector
is prohibited if some non-root namespace already has flow dissector
attached. Also, attaching to non-root namespace is prohibited
when there is flow dissector attached to the root namespace.
v3:
* drop extra check and empty line (Andrii Nakryiko)
v2:
* EPERM -> EEXIST (Song Liu)
* Make sure we don't have dissector attached to non-root namespaces
when attaching the global one (Andrii Nakryiko)
Cc: Petar Penkov <ppenkov@...gle.com>
Stanislav Fomichev (2):
bpf/flow_dissector: add mode to enforce global BPF flow dissector
selftests/bpf: add test for BPF flow dissector in the root namespace
Documentation/bpf/prog_flow_dissector.rst | 3 ++
net/core/flow_dissector.c | 38 +++++++++++++--
.../selftests/bpf/test_flow_dissector.sh | 48 ++++++++++++++++---
3 files changed, 79 insertions(+), 10 deletions(-)
--
2.23.0.581.g78d2f28ef7-goog
Powered by blists - more mailing lists