Re: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38 bpf: prevent out of bounds speculation on pointer arithmetic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2019/3/12 2:54, Greg KH wrote:
On Mon, Mar 11, 2019 at 07:13:14PM +0800, Jason Yan wrote:


On 2019/3/11 17:41, Daniel Borkmann wrote:
Hi Jason,

On 03/11/2019 10:18 AM, Jason Yan wrote:
Hi, Daniel & Greg

This patch (979d63d50c0c bpf: prevent out of bounds speculation on pointer arithmetic) was assigned a CVE (CVE-2019-7308) with a high score:

CVSS v3.0 Severity and Metrics:
Base Score: 9.8 CRITICAL

And this patch is not in stable-4.4, would you please backport this patch to 4.4?

We don't handle kernels as old as 4.4, so someone else would need to
do the backporting e.g. from your side. The series has been backported
to the last two most-recent stable kernels at that time (we usually
follow netdev practice here), and there have been asks about 4.14 as
well; I've been looking into backporting for the latter last two weeks
on and off, but there are conflicts all over the place in fragile core
areas where I didn't have enough free cycles to complete it yet. For
old kernels, you're probably better off doing something like this in
your tree instead of the huge complexity with a backport:


Thanks for you kindly reply.

diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
index bc34cf9..2cea2de 100644
--- a/kernel/bpf/syscall.c
+++ b/kernel/bpf/syscall.c
@@ -47,7 +47,7 @@ static DEFINE_SPINLOCK(prog_idr_lock);
   static DEFINE_IDR(map_idr);
   static DEFINE_SPINLOCK(map_idr_lock);

-int sysctl_unprivileged_bpf_disabled __read_mostly;
+int sysctl_unprivileged_bpf_disabled __read_mostly = 1;


Greg, is it possible to get this kind of mitigation into 4.4?

Why are you using a 4.4 kernel with untrusted userspace?  The only
reason to use 4.4.y at this point in time is if you have a huge SoC tree
patchset that is not upstream.  If you are using x86, you should be
using 4.14.y or newer right now.

That being said, no, I am not going to change the default here, that
could break people's working setups.  I would recommend you just setting
this value in your initrd/setup scripts if you want it, that's why it is
a sysctl :)


Got it, thanks.

Jason

thanks,

greg k-h

.





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux