[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190311185458.GA4986@kroah.com>
Date: Mon, 11 Mar 2019 11:54:58 -0700
From: Greg KH <gregkh@...uxfoundation.org>
To: Jason Yan <yanaijie@...wei.com>
Cc: Daniel Borkmann <daniel@...earbox.net>,
Jann Horn <jannh@...gle.com>, ast@...nel.org,
"zhangyi (F)" <yi.zhang@...wei.com>,
Zhaohongjiang <zhaohongjiang@...wei.com>, netdev@...r.kernel.org,
stable@...r.kernel.org, bpf@...r.kernel.org
Subject: Re: 979d63d50c0c0f7bc537bf821e056cc9fe5abd38 bpf: prevent out of
bounds speculation on pointer arithmetic
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 :)
thanks,
greg k-h
Powered by blists - more mailing lists