All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anmol Karn <anmol.karan123@gmail.com>
To: Eric Biggers <ebiggers@kernel.org>
Cc: marcel@holtmann.org, johan.hedberg@gmail.com,
	linux-kernel-mentees@lists.linuxfoundation.org,
	linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com,
	netdev@vger.kernel.org, linux-bluetooth@vger.kernel.org,
	kuba@kernel.org, davem@davemloft.net,
	syzbot+0bef568258653cff272f@syzkaller.appspotmail.com
Subject: Re: [PATCH] net: bluetooth: Fix null pointer dereference in hci_event_packet()
Date: Thu, 10 Sep 2020 11:32:08 +0530	[thread overview]
Message-ID: <20200910060208.GA22165@Thinkpad> (raw)
In-Reply-To: <20200910050659.GD828@sol.localdomain>

On Wed, Sep 09, 2020 at 10:06:59PM -0700, Eric Biggers wrote:
> On Thu, Sep 10, 2020 at 10:04:24AM +0530, Anmol Karn wrote:
> > Prevent hci_phy_link_complete_evt() from dereferencing 'hcon->amp_mgr'
> > as NULL. Fix it by adding pointer check for it.
> > 
> > Reported-and-tested-by: syzbot+0bef568258653cff272f@syzkaller.appspotmail.com
> > Link: https://syzkaller.appspot.com/bug?extid=0bef568258653cff272f
> > Signed-off-by: Anmol Karn <anmol.karan123@gmail.com>
> > ---
> >  net/bluetooth/hci_event.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> > index 4b7fc430793c..871e16804433 100644
> > --- a/net/bluetooth/hci_event.c
> > +++ b/net/bluetooth/hci_event.c
> > @@ -4936,6 +4936,11 @@ static void hci_phy_link_complete_evt(struct hci_dev *hdev,
> >  		return;
> >  	}
> >  
> > +	if (IS_ERR_OR_NULL(hcon->amp_mgr)) {
> > +		hci_dev_unlock(hdev);
> > +		return;
> > +	}
> > +
> 

Hello Sir,

> In patches that fix a NULL pointer dereference, please include a brief
> explanation of why the pointer can be NULL, including what it means
> semantically; and why the proposed change is the best fix for the problem.
> 

I will surely add more explaination in v2.

> Also, why IS_ERR_OR_NULL()?
> 

I used IS_ERR_OR_NULL() to check if the 'hcon->amp_mgr' is a valid pointer or not, 
and unregister the 'hcon' and signal error, but will make changes in v2 with only
NULL check included, if you think it's incorrect to use IS_ERR check here along with
NULL.


Thanks,
Anmol Karn

WARNING: multiple messages have this Message-ID (diff)
From: Anmol Karn <anmol.karan123@gmail.com>
To: Eric Biggers <ebiggers@kernel.org>
Cc: syzbot+0bef568258653cff272f@syzkaller.appspotmail.com,
	johan.hedberg@gmail.com, netdev@vger.kernel.org,
	marcel@holtmann.org, syzkaller-bugs@googlegroups.com,
	linux-kernel@vger.kernel.org, linux-bluetooth@vger.kernel.org,
	kuba@kernel.org, linux-kernel-mentees@lists.linuxfoundation.org,
	davem@davemloft.net
Subject: Re: [Linux-kernel-mentees] [PATCH] net: bluetooth: Fix null pointer dereference in hci_event_packet()
Date: Thu, 10 Sep 2020 11:32:08 +0530	[thread overview]
Message-ID: <20200910060208.GA22165@Thinkpad> (raw)
In-Reply-To: <20200910050659.GD828@sol.localdomain>

On Wed, Sep 09, 2020 at 10:06:59PM -0700, Eric Biggers wrote:
> On Thu, Sep 10, 2020 at 10:04:24AM +0530, Anmol Karn wrote:
> > Prevent hci_phy_link_complete_evt() from dereferencing 'hcon->amp_mgr'
> > as NULL. Fix it by adding pointer check for it.
> > 
> > Reported-and-tested-by: syzbot+0bef568258653cff272f@syzkaller.appspotmail.com
> > Link: https://syzkaller.appspot.com/bug?extid=0bef568258653cff272f
> > Signed-off-by: Anmol Karn <anmol.karan123@gmail.com>
> > ---
> >  net/bluetooth/hci_event.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
> > index 4b7fc430793c..871e16804433 100644
> > --- a/net/bluetooth/hci_event.c
> > +++ b/net/bluetooth/hci_event.c
> > @@ -4936,6 +4936,11 @@ static void hci_phy_link_complete_evt(struct hci_dev *hdev,
> >  		return;
> >  	}
> >  
> > +	if (IS_ERR_OR_NULL(hcon->amp_mgr)) {
> > +		hci_dev_unlock(hdev);
> > +		return;
> > +	}
> > +
> 

Hello Sir,

> In patches that fix a NULL pointer dereference, please include a brief
> explanation of why the pointer can be NULL, including what it means
> semantically; and why the proposed change is the best fix for the problem.
> 

I will surely add more explaination in v2.

> Also, why IS_ERR_OR_NULL()?
> 

I used IS_ERR_OR_NULL() to check if the 'hcon->amp_mgr' is a valid pointer or not, 
and unregister the 'hcon' and signal error, but will make changes in v2 with only
NULL check included, if you think it's incorrect to use IS_ERR check here along with
NULL.


Thanks,
Anmol Karn
_______________________________________________
Linux-kernel-mentees mailing list
Linux-kernel-mentees@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees

  reply	other threads:[~2020-09-10  6:02 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-10  4:34 [Linux-kernel-mentees] [PATCH] net: bluetooth: Fix null pointer dereference in hci_event_packet() Anmol Karn
2020-09-10  4:34 ` Anmol Karn
2020-09-10  5:06 ` Eric Biggers
2020-09-10  5:06   ` [Linux-kernel-mentees] " Eric Biggers
2020-09-10  6:02   ` Anmol Karn [this message]
2020-09-10  6:02     ` Anmol Karn
2020-09-10 10:49 ` Dan Carpenter
2020-09-10 10:49   ` Dan Carpenter
2020-09-10 14:58   ` Anmol Karn
2020-09-10 14:58     ` Anmol Karn
2020-09-12  9:10   ` Anmol Karn
2020-09-12  9:10     ` Anmol Karn
2020-09-14 15:44     ` Dan Carpenter
2020-09-14 15:44       ` Dan Carpenter
2020-09-14 18:37       ` Anmol Karn
2020-09-14 18:37         ` Anmol Karn
2020-09-29 17:32       ` Anmol Karn
2020-09-29 17:32         ` Anmol Karn
2020-09-30 14:18         ` Anmol Karn
2020-09-30 14:18           ` [Linux-kernel-mentees] " Anmol Karn
2020-10-01  7:06           ` Marcel Holtmann
2020-10-01  7:06             ` [Linux-kernel-mentees] " Marcel Holtmann
2020-10-01  7:45             ` Anmol Karn
2020-10-01  7:45               ` [Linux-kernel-mentees] " Anmol Karn

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=20200910060208.GA22165@Thinkpad \
    --to=anmol.karan123@gmail.com \
    --cc=davem@davemloft.net \
    --cc=ebiggers@kernel.org \
    --cc=johan.hedberg@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=linux-kernel-mentees@lists.linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcel@holtmann.org \
    --cc=netdev@vger.kernel.org \
    --cc=syzbot+0bef568258653cff272f@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.