Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1514297

Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla

Path csiph.com!aioe.org!bofh.it!news.nic.it!robomod
From Cong Wang <xiyou.wangcong@gmail.com>
Newsgroups linux.kernel
Subject Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla
Date Thu, 03 Nov 2016 06:40:01 +0100
Message-ID <sziUN-87D-3@gated-at.bofh.it> (permalink)
References <sze4N-4Zp-7@gated-at.bofh.it> <sziL8-84G-3@gated-at.bofh.it>
Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Jv/2Au3g5VFOIOeSNNT6mlfF/2DUvyxvb8XdLW5E/38=; b=lZ+Nl9IyVvrkrlkMXZM0yF4WDXJuVtGcJIPr8HrFLoNbu+R+PIpYd5QiZTYnUS787G g3+ztP7WnGuCWsJxthKyYUXIqFYk1seAWhJ0YvWnMuUNgfDoeWOHEEKpcn3sKW5AJG+7 QKQqRQ7apsYpWFB014CZepV85W8xy8NjCspq1bICDFCn6VW9Lo3DLcpR0H0tw/apYohX VD4mxLzoUYcS+HqWmX3QuXuziUf9BXSawCnnnpM592lHtNk4R1RmCTrJMeXdJpZ1mDb7 wGYeImdF21osCb0+JsbcvIrkCrGme29tirwblSXSLYiM3VYygFW/i3M3Ms7vd5kqfFi0 Ap7Q==
X-Google-Dkim-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Jv/2Au3g5VFOIOeSNNT6mlfF/2DUvyxvb8XdLW5E/38=; b=bBHDwdLonhsWfFeym8N23sClxGpEzPQkM6TeRVkk7dxBm1ZptwIvUx9twmUaQecn5D nR4jvRBzv3gKNpSbicgaADoO2Tw3SpSJ0UngoYVI06ea8tvuvOMUv2qoWDG8dGWXH4dr baGnxagWGdQOgED7FvWjGAxXCCC3u3Akj/b9aeuUorFqiIwFq1gQb//fSYSzokHTXLYW sVSa8VKx4b9dLy7vp2TYTLywFto04j8yM9TSOPPWmRtXiCvWXV/9qveIgAB34DmxjAvj WmurMsYHLYP84N7DYoXtCb/nQQbbNAPquYwqlpX/T3TxgybU3yOdFXmGF8Dqt3TLqOqM mRrg==
X-Gm-Message-State ABUngvdqLsCrU1vYHjtNMrazshCB9DG4EgHwwWUW9nv7rj0l2JMfAOw921kvkKEaRnTyPsFXX0bxHWYpiRYjzQ==
X-Received by 10.107.32.209 with SMTP id g200mr4712827iog.214.1478151007923; Wed, 02 Nov 2016 22:30:07 -0700 (PDT)
MIME-Version 1.0
Content-Type text/plain; charset=UTF-8
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 36
Organization linux.* mail to news gateway
X-Original-Cc "David S. Miller" <davem@davemloft.net>, Nicolas Dichtel <nicolas.dichtel@6wind.com>, LKML <linux-kernel@vger.kernel.org>, Matti Vaittinen <matti.vaittinen@nokia.com>, Tycho Andersen <tycho.andersen@canonical.com>, stephen hemminger <stephen@networkplumber.org>, Tom Herbert <tom@herbertland.com>, Florian Westphal <fw@strlen.de>, netdev <netdev@vger.kernel.org>
X-Original-Date Wed, 2 Nov 2016 22:29:47 -0700
X-Original-Message-ID <CAM_iQpXAqgW5LxAXmHbBqppM-eo1spyOJhyCpkkZ_3J7DRUUuw@mail.gmail.com>
X-Original-References <CAAeHK+xm5_n-Ep2d4YEq=Yx=f5M2NpV-So0o7811LUk+pLr+rg@mail.gmail.com> <CAM_iQpWBoEhaLfCYPaStZ-U8s-i5h9fmaG9JCW-q7QfjntfEOA@mail.gmail.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1514297

Show key headers only | View raw


On Wed, Nov 2, 2016 at 10:25 PM, Cong Wang <xiyou.wangcong@gmail.com> wrote:
> On Wed, Nov 2, 2016 at 5:25 PM, Andrey Konovalov <andreyknvl@google.com> wrote:
>> Hi,
>>
>> I've got the following error report while running the syzkaller fuzzer:
>>
>> ==================================================================
>> BUG: KASAN: global-out-of-bounds in validate_nla+0x49b/0x4e0 at addr
>> ffffffff8407e3ac
>> Read of size 2 by task a.out/3877
>> Address belongs to variable[<        none        >]
>> cgroupstats_cmd_get_policy+0xc/0x40 ??:?
>
> Seems taskstats doesn't use genetlink correctly, CGROUPSTATS_CMD_ATTR_FD
> is not within 0~TASKSTATS_CMD_ATTR_MAX.
>
> I guess we need the following patch, but it certainly breaks user-space... :-/


Wait, maybe just this one-line fix is enough:

diff --git a/kernel/taskstats.c b/kernel/taskstats.c
index b3f05ee..e6b342e 100644
--- a/kernel/taskstats.c
+++ b/kernel/taskstats.c
@@ -54,7 +54,7 @@ static const struct nla_policy
taskstats_cmd_get_policy[TASKSTATS_CMD_ATTR_MAX+1
        [TASKSTATS_CMD_ATTR_REGISTER_CPUMASK] = { .type = NLA_STRING },
        [TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK] = { .type = NLA_STRING },};

-static const struct nla_policy
cgroupstats_cmd_get_policy[CGROUPSTATS_CMD_ATTR_MAX+1] = {
+static const struct nla_policy
cgroupstats_cmd_get_policy[TASKSTATS_CMD_ATTR_MAX+1] = {
        [CGROUPSTATS_CMD_ATTR_FD] = { .type = NLA_U32 },
 };

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla Andrey Konovalov <andreyknvl@google.com> - 2016-11-03 01:30 +0100
  Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla Cong Wang <xiyou.wangcong@gmail.com> - 2016-11-03 06:30 +0100
    Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla Cong Wang <xiyou.wangcong@gmail.com> - 2016-11-03 06:40 +0100
      Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla Andrey Konovalov <andreyknvl@google.com> - 2016-11-03 16:30 +0100

csiph-web