lkml.org 
[lkml]   [2021]   [Dec]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] usb: gadget: use after free in dev_config
From
Date
Thank for your suggesions. I will break this up into two separate 
patches later. And i think it's necessary to clear up dev->config and
dev->hs_config and dev->dev. For example, dev->hs_config is used in
ep0_read() which may lead a UAF.

Thanks.

On 2021/12/30 上午5:11, Alan Stern wrote:
> On Tue, Dec 28, 2021 at 05:21:26PM +0800, Hangyu Hua wrote:
>> There are two bugs:
>
> You should break this up into two separate patches, one for each bug.
>
>> dev->buf does not need to be released if it already exists before
>> executing dev_config.
>
> That's right. The call to dev_config should fail without changing any
> of the stored values.
>
>> dev->config and dev->hs_config and dev->dev need to be cleaned if
>> dev_config fails to avoid UAF.
>
> Do they really need to be cleared? I think if dev_config fails then
> those pointers never get used, so it doesn't matter what they contain.
>
> Of course, clearing them doesn't hurt, but it would be best to clear
> all of them in the "fail:" part of the routine. And then you would
> want to change the pathway where usb_gadget_probe_driver fails, to make
> it go to "fail:" also.
>
> Alan Stern
>

\
 
 \ /
  Last update: 2021-12-30 03:15    [W:0.127 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site