From: Greg KH <greg@kroah.com>
To: Edward Adam Davis <eadavis@qq.com>
Cc: syzbot+ce750e124675d4599449@syzkaller.appspotmail.com,
isely@pobox.com, linux-kernel@vger.kernel.org,
linux-media@vger.kernel.org, linux-usb@vger.kernel.org,
mchehab@kernel.org, pvrusb2-owner@isely.net, pvrusb2@isely.net,
syzkaller-bugs@googlegroups.com
Subject: Re: [PATCH usb] media/pvrusb2: fix uaf in pvr2_context_set_notify
Date: Sat, 17 Feb 2024 08:41:33 +0100 [thread overview]
Message-ID: <2024021716-accent-islamist-6a87@gregkh> (raw)
In-Reply-To: <tencent_19D16EF24CA0E7F686C252C8C66D49A2AE06@qq.com>
On Fri, Feb 16, 2024 at 03:30:47PM +0800, Edward Adam Davis wrote:
> [Syzbot reported]
> BUG: KASAN: slab-use-after-free in pvr2_context_set_notify+0x2c4/0x310 drivers/media/usb/pvrusb2/pvrusb2-context.c:35
> Read of size 4 at addr ffff888113aeb0d8 by task kworker/1:1/26
>
> CPU: 1 PID: 26 Comm: kworker/1:1 Not tainted 6.8.0-rc1-syzkaller-00046-gf1a27f081c1f #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
> Workqueue: usb_hub_wq hub_event
> Call Trace:
> <TASK>
> __dump_stack lib/dump_stack.c:88 [inline]
> dump_stack_lvl+0xd9/0x1b0 lib/dump_stack.c:106
> print_address_description mm/kasan/report.c:377 [inline]
> print_report+0xc4/0x620 mm/kasan/report.c:488
> kasan_report+0xda/0x110 mm/kasan/report.c:601
> pvr2_context_set_notify+0x2c4/0x310 drivers/media/usb/pvrusb2/pvrusb2-context.c:35
> pvr2_context_notify drivers/media/usb/pvrusb2/pvrusb2-context.c:95 [inline]
> pvr2_context_disconnect+0x94/0xb0 drivers/media/usb/pvrusb2/pvrusb2-context.c:272
>
> Freed by task 906:
> kasan_save_stack+0x33/0x50 mm/kasan/common.c:47
> kasan_save_track+0x14/0x30 mm/kasan/common.c:68
> kasan_save_free_info+0x3f/0x60 mm/kasan/generic.c:640
> poison_slab_object mm/kasan/common.c:241 [inline]
> __kasan_slab_free+0x106/0x1b0 mm/kasan/common.c:257
> kasan_slab_free include/linux/kasan.h:184 [inline]
> slab_free_hook mm/slub.c:2121 [inline]
> slab_free mm/slub.c:4299 [inline]
> kfree+0x105/0x340 mm/slub.c:4409
> pvr2_context_check drivers/media/usb/pvrusb2/pvrusb2-context.c:137 [inline]
> pvr2_context_thread_func+0x69d/0x960 drivers/media/usb/pvrusb2/pvrusb2-context.c:158
>
> [Analyze]
> Task A set disconnect_flag = !0, which resulted in Task B's condition being met
> and releasing mp, leading to this issue.
>
> [Fix]
> Place the disconnect_flag assignment operation after all code in pvr2_context_disconnect()
> to avoid this issue.
>
> Reported-and-tested-by: syzbot+ce750e124675d4599449@syzkaller.appspotmail.com
> Signed-off-by: Edward Adam Davis <eadavis@qq.com>
What commit id does this fix?
And should it be cc: stable as well?
thanks,
greg k-h
next prev parent reply other threads:[~2024-02-17 7:41 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <mailman.217.1706634262.2961.pvrusb2@isely.net>
2024-01-31 10:22 ` [syzbot] [pvrusb2?] KASAN: slab-use-after-free Read in pvr2_context_set_notify (2) syzbot
2024-02-16 7:30 ` [PATCH usb] media/pvrusb2: fix uaf in pvr2_context_set_notify Edward Adam Davis
2024-02-17 7:41 ` Greg KH [this message]
2024-02-18 6:22 ` Edward Adam Davis
2024-03-02 2:08 ` [PATCH usb V2] " Edward Adam Davis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2024021716-accent-islamist-6a87@gregkh \
--to=greg@kroah.com \
--cc=eadavis@qq.com \
--cc=isely@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=pvrusb2-owner@isely.net \
--cc=pvrusb2@isely.net \
--cc=syzbot+ce750e124675d4599449@syzkaller.appspotmail.com \
--cc=syzkaller-bugs@googlegroups.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).