Messages in this thread | | | From | Paul Moore <> | Date | Fri, 10 Mar 2017 15:28:27 -0500 | Subject | Re: [PATCH v2] selinux: check for address length in selinux_socket_bind() |
| |
On Fri, Mar 10, 2017 at 7:01 AM, Paul Moore <paul@paul-moore.com> wrote: > On Thu, Mar 9, 2017 at 2:12 AM, David Miller <davem@davemloft.net> wrote: >> From: Alexander Potapenko <glider@google.com> >> Date: Mon, 6 Mar 2017 19:46:14 +0100 >> >>> KMSAN (KernelMemorySanitizer, a new error detection tool) reports use of >>> uninitialized memory in selinux_socket_bind(): >> ... >>> (the line numbers are relative to 4.8-rc6, but the bug persists upstream) >>> >>> , when I run the following program as root: >> ... >>> (for different values of |size| other error reports are printed). >>> >>> This happens because bind() unconditionally copies |size| bytes of >>> |addr| to the kernel, leaving the rest uninitialized. Then >>> security_socket_bind() reads the IP address bytes, including the >>> uninitialized ones, to determine the port, or e.g. pass them further to >>> sel_netnode_find(), which uses them to calculate a hash. >>> >>> Signed-off-by: Alexander Potapenko <glider@google.com> >> >> Are the SELINUX folks going to pick this up or should I? > > Yes, it's on my list of things to merge, I was just a bit distracted > this week with yet another audit problem. I'm going to start making > my way through the patch backlog today.
Just merged into selinux/next, thanks. My apologies for the delay.
-- paul moore www.paul-moore.com
| |