Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1514609
| From | Andrey Konovalov <andreyknvl@google.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: net/netlink: global-out-of-bounds in genl_family_rcv_msg/validate_nla |
| Date | 2016-11-03 16:30 +0100 |
| Message-ID | <szs7L-5Cd-31@gated-at.bofh.it> (permalink) |
| References | <sze4N-4Zp-7@gated-at.bofh.it> <sziL8-84G-3@gated-at.bofh.it> <sziUN-87D-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Cong,
Yes, the last patch fixes the issue.
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Thanks!
On Thu, Nov 3, 2016 at 6:29 AM, Cong Wang <xiyou.wangcong@gmail.com> wrote:
> 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 | Find similar | Unroll 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