---
id: CVE-2026-23439
title: 'udp_tunnel: fix NULL deref caused by udp_sock_create6 when CONFIG_IPV6=n'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  udp_tunnel: fix NULL deref caused by udp_sock_create6 when CONFIG_IPV6=n

  When CONFIG_IPV6 is disabled, the udp_sock_create6() function returns 0
  (success) without actu…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    dfc96ae0074cc47b5478a59e5aa19233e434243f
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    66117dbb3dbae82f86735bf727b1d59cc677afa1
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    ba7c9ddcdd077942b798979edb035207374d4096
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    a05a2149386f6dfb4245f522acdbef892acafc84
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    9f036aa0fe46c19e938f03d10e02c23f4fffae5e
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    003343985f26dfefd0c94b1fe1316a2de74428b9
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    12aa4b73a67d95bc739995a2d6943aec2f9785c9
  - >-
    Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 <
    b3a6df291fecf5f8a308953b65ca72b7fc9e015d
  - Linux 3.18
published: '2026-04-03'
updated: '2026-09-08'
sourceUpdated: '2026-09-08T08:46:12.477Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-23439'
references:
  - url: 'https://git.kernel.org/stable/c/dfc96ae0074cc47b5478a59e5aa19233e434243f'
  - url: 'https://git.kernel.org/stable/c/66117dbb3dbae82f86735bf727b1d59cc677afa1'
  - url: 'https://git.kernel.org/stable/c/ba7c9ddcdd077942b798979edb035207374d4096'
  - url: 'https://git.kernel.org/stable/c/a05a2149386f6dfb4245f522acdbef892acafc84'
  - url: 'https://git.kernel.org/stable/c/9f036aa0fe46c19e938f03d10e02c23f4fffae5e'
  - url: 'https://git.kernel.org/stable/c/003343985f26dfefd0c94b1fe1316a2de74428b9'
  - url: 'https://git.kernel.org/stable/c/12aa4b73a67d95bc739995a2d6943aec2f9785c9'
  - url: 'https://git.kernel.org/stable/c/b3a6df291fecf5f8a308953b65ca72b7fc9e015d'
tags:
  - cve.org
epss: 0.00129
epssPercentile: 0.02085
ingestedAt: '2026-09-08T15:33:26.992Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

udp_tunnel: fix NULL deref caused by udp_sock_create6 when CONFIG_IPV6=n

When CONFIG_IPV6 is disabled, the udp_sock_create6() function returns 0
(success) without actually creating a socket. Callers such as
fou_create() then proceed to dereference the uninitialized socket
pointer, resulting in a NULL pointer dereference.

The captured NULL deref crash:
  BUG: kernel NULL pointer dereference, address: 0000000000000018
  RIP: 0010:fou_nl_add_doit (net/ipv4/fou_core.c:590 net/ipv4/fou_core.c:764)
  [...]
  Call Trace:
    <TASK>
    genl_family_rcv_msg_doit.constprop.0 (net/netlink/genetlink.c:1114)
    genl_rcv_msg (net/netlink/genetlink.c:1194 net/netlink/genetlink.c:1209)
    [...]
    netlink_rcv_skb (net/netlink/af_netlink.c:2550)
    genl_rcv (net/netlink/genetlink.c:1219)
    netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344)
    netlink_sendmsg (net/netlink/af_netlink.c:1894)
    __sock_sendmsg (net/socket.c:727 (discriminator 1) net/socket.c:742 (discriminator 1))
    __sys_sendto (./include/linux/file.h:62 (discriminator 1) ./include/linux/file.h:83 (discriminator 1) net/socket.c:2183 (discriminator 1))
    __x64_sys_sendto (net/socket.c:2213 (discriminator 1) net/socket.c:2209 (discriminator 1) net/socket.c:2209 (discriminator 1))
    do_syscall_64 (arch/x86/entry/syscall_64.c:63 (discriminator 1) arch/x86/entry/syscall_64.c:94 (discriminator 1))
    entry_SYSCALL_64_after_hwframe (net/arch/x86/entry/entry_64.S:130)

This patch makes udp_sock_create6 return -EPFNOSUPPORT instead, so
callers correctly take their error paths. There is only one caller of
the vulnerable function and only privileged users can trigger it.

## Affected

- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < dfc96ae0074cc47b5478a59e5aa19233e434243f`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < 66117dbb3dbae82f86735bf727b1d59cc677afa1`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < ba7c9ddcdd077942b798979edb035207374d4096`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < a05a2149386f6dfb4245f522acdbef892acafc84`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < 9f036aa0fe46c19e938f03d10e02c23f4fffae5e`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < 003343985f26dfefd0c94b1fe1316a2de74428b9`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < 12aa4b73a67d95bc739995a2d6943aec2f9785c9`
- `Linux >= fd384412e199b62c3ddaabd18dce86d0e164c5b9 < b3a6df291fecf5f8a308953b65ca72b7fc9e015d`
- `Linux 3.18`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
