Re: [PATCH] kasan: fix the missing underflow in memmove and memcpy with CONFIG_KASAN_GENERIC=y

From: Dmitry Vyukov
Date: Tue Oct 08 2019 - 08:12:02 EST


On Tue, Oct 8, 2019 at 1:42 PM Qian Cai <cai@xxxxxx> wrote:
> > On Oct 8, 2019, at 7:02 AM, Walter Wu <walter-zh.wu@xxxxxxxxxxxx> wrote:
> > I don't know very well in UBSAN, but I try to build ubsan kernel and
> > test a negative number in memset and kmalloc_memmove_invalid_size(), it
> > look like no check.
>
> It sounds like more important to figure out why the UBSAN is not working in this case rather than duplicating functionality elsewhere.

Detecting out-of-bounds accesses is the direct KASAN responsibility.
Even more direct than for KUBSAN. We are not even adding
functionality, it's just a plain bug in KASAN code, it tricks itself
into thinking that access size is 0.
Maybe it's already detected by KUBSAN too?