From: David Ahern <dsahern@kernel.org>
To: "Eric Dumazet" <edumazet@google.com>, 冯嘉仪 <23210240148@m.fudan.edu.cn>
Cc: davem <davem@davemloft.net>, kuba <kuba@kernel.org>,
pabeni <pabeni@redhat.com>, netdev <netdev@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [BUG] Potential Null Pointer Dereference in nexthop_create_group Function
Date: Sat, 14 Feb 2026 09:16:34 -0700 [thread overview]
Message-ID: <5c2aae9b-b0c9-4fe4-bc92-45ada8f7cdc1@kernel.org> (raw)
In-Reply-To: <CANn89iJvjpBNOjV6cv08bE+uBgur-5AHpyhB5P-s3Jzr3+SLWQ@mail.gmail.com>
On 2/14/26 5:37 AM, Eric Dumazet wrote:
> On Sat, Feb 14, 2026 at 1:35 PM Eric Dumazet <edumazet@google.com> wrote:
>>
>> On Sat, Feb 14, 2026 at 1:17 PM 冯嘉仪 <23210240148@m.fudan.edu.cn> wrote:
>>>
>>> Dear Maintainer,
>>>
>>> Our team recently developed a null-pointer-dereference (NPD) vulnerability detection tool, and we used it to scan the Linux Kernel (version 6.9.6). After manual review, we identified a potentially vulnerable code snippet that could lead to a null-pointer dereference bug. We would appreciate your expert insight to confirm whether this vulnerability could indeed pose a risk to the system.
>>>
>>> Vulnerability Description:
>>> File: net/ipv4/nexthop.c
>>> In the function nexthop_create_group, we found the following line of code:
>>>
>>> if (!nexthop_get(nhe)) {
>>>
>>> The issue arises because the nhe pointer may be passed as NULL in certain situations. The statement passes the nhe pointer to nexthop_get without any check, but nexthop_get might contain a dereference operation on the nhe pointer, which could result in a null-pointer dereference.
>>>
>>> Proposed Fix:
>>> To prevent the potential null-pointer dereference, we suggest adding a NULL check for the nhe pointer before attempting to pass the pointer to nexthop_get.
>>>
>>> Request for Review:
>>> We would appreciate your expert insight to confirm whether this vulnerability indeed poses a risk to the system, and if the proposed fix is appropriate. If there are reasons why this issue does not present a real risk (e.g., the NULL check is redundant or unnecessary), we would be grateful for clarification.
>>>
>>> Thank you for your time and consideration.
>>
>> This seems legit, I am not sure why syzbot did not find it yet.
>>
>
> typo in @nhe. Should have been
>
> diff --git a/net/ipv4/nexthop.c b/net/ipv4/nexthop.c
> index 7b9d70f9b31c7ae6b2039cb321845b852bc81a33..36c58e4d5f0044e43498ea915ee2079864fab1e2
> 100644
> --- a/net/ipv4/nexthop.c
> +++ b/net/ipv4/nexthop.c
> @@ -2742,7 +2742,7 @@ static struct nexthop
> *nexthop_create_group(struct net *net,
> struct nh_info *nhi;
>
> nhe = nexthop_find_by_id(net, entry[i].id);
> - if (!nexthop_get(nhe)) {
> + if (!nhe || !nexthop_get(nhe)) {
> err = -ENOENT;
> goto out_no_nh;
> }
rtm_new_nexthop - called with rtnl held
- nh_check_attr_group_rtnl validates all id's in the group list
- nexthop_add
+ nexthop_create_group - rtnl was never released, so if the id was
valid earlier, it is still valid so !nhe is not needed
This is why syzbot never found it; nothing to find.
next prev parent reply other threads:[~2026-02-14 16:16 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-14 12:17 [BUG] Potential Null Pointer Dereference in nexthop_create_group Function 冯嘉仪
2026-02-14 12:35 ` Eric Dumazet
2026-02-14 12:37 ` Eric Dumazet
2026-02-14 16:16 ` David Ahern [this message]
[not found] <tencent_60BB14B216A3DFF94F6928CE@qq.com>
2026-02-16 10:17 ` Paolo Abeni
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=5c2aae9b-b0c9-4fe4-bc92-45ada8f7cdc1@kernel.org \
--to=dsahern@kernel.org \
--cc=23210240148@m.fudan.edu.cn \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.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