Re: [PATCH v2 0/3] ubsan: Split out bounds checker

Dmitry Vyukov
2019-11-22T09:08:02Z

On Thu, Nov 21, 2019 at 7:15 PM Kees Cook <keescook@chromium.org> wrote:
>
> v2:
> - clarify Kconfig help text (aryabinin)
> - add reviewed-by
> - aim series at akpm, which seems to be where ubsan goes through?
> v1: https://lore.kernel.org/lkml/20191120010636.27368-1-keescook@chromium.org
>
> This splits out the bounds checker so it can be individually used. This
> is expected to be enabled in Android and hopefully for syzbot. Includes
> LKDTM tests for behavioral corner-cases (beyond just the bounds checker).
>
> -Kees

+syzkaller mailing list

This is great!

I wanted to enable UBSAN on syzbot for a long time. And it's
_probably_ not lots of work. But it was stuck on somebody actually
dedicating some time specifically for it.
Kees, or anybody else interested, could you provide relevant configs
that (1) useful for kernel, (2) we want 100% cleanliness, (3) don't
fire all the time even without fuzzing? Anything else required to
enable UBSAN? I don't see anything. syzbot uses gcc 8.something, which
I assume should be enough (but we can upgrade if necessary).

> Kees Cook (3):
> ubsan: Add trap instrumentation option
> ubsan: Split "bounds" checker from other options
> lkdtm/bugs: Add arithmetic overflow and array bounds checks
>
> drivers/misc/lkdtm/bugs.c | 75 ++++++++++++++++++++++++++++++++++++++
> drivers/misc/lkdtm/core.c | 3 ++
> drivers/misc/lkdtm/lkdtm.h | 3 ++
> lib/Kconfig.ubsan | 42 +++++++++++++++++++--
> lib/Makefile | 2 +
> scripts/Makefile.ubsan | 16 ++++++--
> 6 files changed, 134 insertions(+), 7 deletions(-)
>
> --
> 2.17.1