Home

Description

In the Linux kernel, the following vulnerability has been resolved: udp: Unhash auto-bound connected sk from 4-tuple hash table when disconnected. Let's say we bind() an UDP socket to the wildcard address with a non-zero port, connect() it to an address, and disconnect it from the address. bind() sets SOCK_BINDPORT_LOCK on sk->sk_userlocks (but not SOCK_BINDADDR_LOCK), and connect() calls udp_lib_hash4() to put the socket into the 4-tuple hash table. Then, __udp_disconnect() calls sk->sk_prot->rehash(sk). It computes a new hash based on the wildcard address and moves the socket to a new slot in the 4-tuple hash table, leaving a garbage in the chain that no packet hits. Let's remove such a socket from 4-tuple hash table when disconnected. Note that udp_sk(sk)->udp_portaddr_hash needs to be udpated after udp_hash4_dec(hslot2) in udp_unhash4().

PUBLISHED Reserved 2026-01-13 | Published 2026-03-25 | Updated 2026-05-11 | Assigner Linux

Product status

Default status
unaffected

78c91ae2c6deb5d236a5a93ff2995cdd05514380 (git) before b955350778b8715e1b7885179979b3a68221c0fb
affected

78c91ae2c6deb5d236a5a93ff2995cdd05514380 (git) before 3b8f104880c104151f8c30f2f89df81fb59a286c
affected

78c91ae2c6deb5d236a5a93ff2995cdd05514380 (git) before 6996a2d2d0a64808c19c98002aeb5d9d1b2df6a4
affected

Default status
affected

6.13
affected

Any version before 6.13
unaffected

6.18.17 (semver)
unaffected

6.19.7 (semver)
unaffected

7.0 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/b955350778b8715e1b7885179979b3a68221c0fb

git.kernel.org/...c/3b8f104880c104151f8c30f2f89df81fb59a286c

git.kernel.org/...c/6996a2d2d0a64808c19c98002aeb5d9d1b2df6a4

cve.org (CVE-2026-23331)

nvd.nist.gov (CVE-2026-23331)

Download JSON