]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
bpf: Disable xfrm_decode_session hook attachment
authorBradley Morgan <include@grrlz.net>
Fri, 19 Jun 2026 13:03:03 +0000 (13:03 +0000)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 23 Jun 2026 03:08:37 +0000 (20:08 -0700)
BPF LSM programs can currently attach to xfrm_decode_session(). That
hook may return an error, but security_skb_classify_flow() calls it
from a void path and triggers BUG_ON() if an error is returned.

Disable BPF attachment to the hook to prevent a BPF LSM program from
turning packet classification into a full panic.

Fixes: 9e4e01dfd325 ("bpf: lsm: Implement attach, detach and execution")
Signed-off-by: Bradley Morgan <include@grrlz.net>
Link: https://lore.kernel.org/r/20260619130305.27779-1-include@grrlz.net
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
kernel/bpf/bpf_lsm.c

index 564071a92d7d2017e92c69d8eff3e8f2c0e15fd8..1433809bb166a3879fdfa90fc52454f980fe1f2b 100644 (file)
@@ -51,6 +51,9 @@ BTF_ID(func, bpf_lsm_key_getsecurity)
 #ifdef CONFIG_AUDIT
 BTF_ID(func, bpf_lsm_audit_rule_match)
 #endif
+#ifdef CONFIG_SECURITY_NETWORK_XFRM
+BTF_ID(func, bpf_lsm_xfrm_decode_session)
+#endif
 BTF_ID(func, bpf_lsm_ismaclabel)
 BTF_ID(func, bpf_lsm_file_alloc_security)
 BTF_SET_END(bpf_lsm_disabled_hooks)