[PATCH v3 0/6] kasan: add workqueue and timer stack for generic KASAN

Walter Wu walter-zh.wu at mediatek.com
Tue Sep 15 12:06:41 EDT 2020


On Mon, 2020-09-14 at 14:25 +0200, Andrey Konovalov wrote:
> On Sun, Sep 13, 2020 at 12:17 PM Dmitry Vyukov <dvyukov at google.com>
> wrote:
> 
>         On Wed, Aug 26, 2020 at 2:30 PM 'Andrey Konovalov' via
>         kasan-dev
>         <kasan-dev at googlegroups.com> wrote:
>         >
>         > On Tue, Aug 25, 2020 at 10:26 AM 'Marco Elver' via kasan-dev
>         > <kasan-dev at googlegroups.com> wrote:
>         > >
>         > > On Tue, 25 Aug 2020 at 03:57, Walter Wu
>         <walter-zh.wu at mediatek.com> wrote:
>         > > >
>         > > > Syzbot reports many UAF issues for workqueue or timer,
>         see [1] and [2].
>         > > > In some of these access/allocation happened in
>         process_one_work(),
>         > > > we see the free stack is useless in KASAN report, it
>         doesn't help
>         > > > programmers to solve UAF on workqueue. The same may
>         stand for times.
>         > > >
>         > > > This patchset improves KASAN reports by making them to
>         have workqueue
>         > > > queueing stack and timer stack information. It is useful
>         for programmers
>         > > > to solve use-after-free or double-free memory issue.
>         > > >
>         > > > Generic KASAN also records the last two workqueue and
>         timer stacks and
>         > > > prints them in KASAN report. It is only suitable for
>         generic KASAN.
>         > > >
>         > > > [1]https://groups.google.com/g/syzkaller-bugs/search?q=%
>         22use-after-free%22+process_one_work
>         > > > [2]https://groups.google.com/g/syzkaller-bugs/search?q=%
>         22use-after-free%22%20expire_timers
>         > > > [3]https://bugzilla.kernel.org/show_bug.cgi?id=198437
>         > > >
>         > > > Walter Wu (6):
>         > > > timer: kasan: record timer stack
>         > > > workqueue: kasan: record workqueue stack
>         > > > kasan: print timer and workqueue stack
>         > > > lib/test_kasan.c: add timer test case
>         > > > lib/test_kasan.c: add workqueue test case
>         > > > kasan: update documentation for generic kasan
>         > >
>         > > Acked-by: Marco Elver <elver at google.com>
>         >
>         > Reviewed-by: Andrey Konovalov <andreyknvl at google.com>
>         
>         Reviewed-by: Dmitry Vyukov <dvyukov at google.com>
>         
>         Thanks! The UAF reports with RCU stacks that I see now are
>         just 🔥🔥🔥
> 
> 
> Hi Walter,
> 
> 
> This patchset needs to be rebased onto the KASAN-KUNIT patches, which
> just recently went into the mm tree.
> 
> 
> Thanks!

Hi Dmitry, Andrey,

Got it. 

Thanks for your review and reminder.

Walter


More information about the Linux-mediatek mailing list