Thread (5 messages) 5 messages, 3 authors, 2021-10-25

Re: [PATCH] sctp: initialize endpoint LSM labels also on the client side

From: Ondrej Mosnacek <omosnace@redhat.com>
Date: 2021-10-25 07:55:54
Also in: linux-sctp, lkml, netdev, selinux

On Fri, Oct 22, 2021 at 8:33 AM Xin Long [off-list ref] wrote:
On Thu, Oct 21, 2021 at 11:55 PM Marcelo Ricardo Leitner
[off-list ref] wrote:
quoted
On Thu, Oct 21, 2021 at 05:38:46PM +0200, Ondrej Mosnacek wrote:
quoted
The secid* fields in struct sctp_endpoint are used to initialize the
labels of a peeloff socket created from the given association. Currently
they are initialized properly when a new association is created on the
server side (upon receiving an INIT packet), but not on the client side.
+Cc Xin
Thanks Marcelo,

security_sctp_assoc_request() is not supposed to call on the client side,
as we can see on TCP. The client side's labels should be set to the
connection by selinux_inet_conn_request(). But we can't do it based
on the current hooks.

The root problem is that the current hooks incorrectly treat sctp_endpoint
in SCTP as request_sock in TCP, while it should've been sctp_association.
We need a bigger change on the current security sctp code.

I will post the patch series in hand, please take a look.
Thanks, your patches indeed seem to do the right thing and they also
do pass selinux-testsuite with the added client peeloff tests (as also
confirmed by Richard already). I have just a few minor comments, which
I'll send as replies to the individual patches.

--
Ondrej Mosnacek
Software Engineer, Linux Security - SELinux kernel
Red Hat, Inc.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help