Re: KASAN: slab-out-of-bounds Read in usage_accumulate

From: Dmitry Vyukov
Date: Thu Jun 06 2019 - 10:45:56 EST


On Thu, Jun 6, 2019 at 3:52 PM syzbot
<syzbot+b0d730107e2ca6cb952f@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Hello,
>
> syzbot found the following crash on:
>
> HEAD commit: 156c0591 Merge tag 'linux-kselftest-5.2-rc4' of git://git...
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=15f2095aa00000
> kernel config: https://syzkaller.appspot.com/x/.config?x=60564cb52ab29d5b
> dashboard link: https://syzkaller.appspot.com/bug?extid=b0d730107e2ca6cb952f
> compiler: gcc (GCC) 9.0.0 20181231 (experimental)
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11a8fb61a00000

Looks +bpf related from the repro.

> IMPORTANT: if you fix the bug, please add the following tag to the commit:
> Reported-by: syzbot+b0d730107e2ca6cb952f@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> ==================================================================
> BUG: KASAN: slab-out-of-bounds in usage_accumulate+0x9e/0xb0
> kernel/locking/lockdep.c:1676
> Read of size 8 at addr ffff8880a59cfed0 by task syz-executor.1/9366
>
> CPU: 1 PID: 9366 Comm: syz-executor.1 Not tainted 5.2.0-rc3+ #20
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
> Google 01/01/2011
> Call Trace:
>
> Allocated by task 0:
> (stack is not available)
>
> Freed by task 0:
> (stack is not available)
>
> The buggy address belongs to the object at ffff8880a59ce6c0
> which belongs to the cache kmalloc-4k of size 4096
> The buggy address is located 2064 bytes to the right of
> 4096-byte region [ffff8880a59ce6c0, ffff8880a59cf6c0)
> The buggy address belongs to the page:
> page:ffffea0002967380 refcount:1 mapcount:0 mapping:ffff8880aa400dc0
> index:0x0 compound_mapcount: 0
> flags: 0x1fffc0000010200(slab|head)
> raw: 01fffc0000010200 ffffea000296a008 ffffea000233fe08 ffff8880aa400dc0
> raw: 0000000000000000 ffff8880a59ce6c0 0000000100000001 0000000000000000
> page dumped because: kasan: bad access detected
>
> Memory state around the buggy address:
> ffff8880a59cfd80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
> ffff8880a59cfe00: fc fc fc fc f1 f1 f1 f1 00 f2 f2 f2 00 f2 f2 f2
> > ffff8880a59cfe80: 00 f2 f2 f2 00 f2 f2 f2 fc fc fc fc 00 00 00 f2
> ^
> ffff8880a59cff00: f2 f2 f2 f2 fc fc fc fc 00 00 00 f3 f3 f3 f3 f3
> ffff8880a59cff80: 00 00 00 00 00 00 fc fc fc fc fc fc fc fc fc fc
> ==================================================================
>
>
> ---
> This bug is generated by a bot. It may contain errors.
> See https://goo.gl/tpsmEJ for more information about syzbot.
> syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxxx
>
> syzbot will keep track of this bug report. See:
> https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
> syzbot can test patches for this bug, for details see:
> https://goo.gl/tpsmEJ#testing-patches
>
> --
> You received this message because you are subscribed to the Google Groups "syzkaller-bugs" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to syzkaller-bugs+unsubscribe@xxxxxxxxxxxxxxxxx
> To view this discussion on the web visit https://groups.google.com/d/msgid/syzkaller-bugs/000000000000454279058aa80535%40google.com.
> For more options, visit https://groups.google.com/d/optout.