CVE-2023-52577

dccp: fix dccp_v4_err()/dccp_v6_err() again

MEDIUM
5.5
CVSS Score
Published: March 2, 2024 at 09:59 PM UTC
Updated: June 17, 2026 at 06:43 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: dccp: fix dccp_v4_err()/dccp_v6_err() again dh->dccph_x is the 9th byte (offset 8) in "struct dccp_hdr", not in the "byte 7" as Jann claimed. We need to make sure the ICMP messages are big enough, using more standard ways (no more assumptions). syzbot reported: BUG: KMSAN: uninit-value in pskb_may_pull_reason include/linux/skbuff.h:2667 [inline] BUG: KMSAN: uninit-value in pskb_may_pull include/linux/skbuff.h:2681 [inline] BUG: KMSAN: uninit-value in dccp_v6_err+0x426/0x1aa0 net/dccp/ipv6.c:94 pskb_may_pull_reason include/linux/skbuff.h:2667 [inline] pskb_may_pull include/linux/skbuff.h:2681 [inline] dccp_v6_err+0x426/0x1aa0 net/dccp/ipv6.c:94 icmpv6_notify+0x4c7/0x880 net/ipv6/icmp.c:867 icmpv6_rcv+0x19d5/0x30d0 ip6_protocol_deliver_rcu+0xda6/0x2a60 net/ipv6/ip6_input.c:438 ip6_input_finish net/ipv6/ip6_input.c:483 [inline] NF_HOOK include/linux/netfilter.h:304 [inline] ip6_input+0x15d/0x430 net/ipv6/ip6_input.c:492 ip6_mc_input+0xa7e/0xc80 net/ipv6/ip6_input.c:586 dst_input include/net/dst.h:468 [inline] ip6_rcv_finish+0x5db/0x870 net/ipv6/ip6_input.c:79 NF_HOOK include/linux/netfilter.h:304 [inline] ipv6_rcv+0xda/0x390 net/ipv6/ip6_input.c:310 __netif_receive_skb_one_core net/core/dev.c:5523 [inline] __netif_receive_skb+0x1a6/0x5a0 net/core/dev.c:5637 netif_receive_skb_internal net/core/dev.c:5723 [inline] netif_receive_skb+0x58/0x660 net/core/dev.c:5782 tun_rx_batched+0x83b/0x920 tun_get_user+0x564c/0x6940 drivers/net/tun.c:2002 tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2048 call_write_iter include/linux/fs.h:1985 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x8ef/0x15c0 fs/read_write.c:584 ksys_write+0x20f/0x4c0 fs/read_write.c:637 __do_sys_write fs/read_write.c:649 [inline] __se_sys_write fs/read_write.c:646 [inline] __x64_sys_write+0x93/0xd0 fs/read_write.c:646 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd Uninit was created at: slab_post_alloc_hook+0x12f/0xb70 mm/slab.h:767 slab_alloc_node mm/slub.c:3478 [inline] kmem_cache_alloc_node+0x577/0xa80 mm/slub.c:3523 kmalloc_reserve+0x13d/0x4a0 net/core/skbuff.c:559 __alloc_skb+0x318/0x740 net/core/skbuff.c:650 alloc_skb include/linux/skbuff.h:1286 [inline] alloc_skb_with_frags+0xc8/0xbd0 net/core/skbuff.c:6313 sock_alloc_send_pskb+0xa80/0xbf0 net/core/sock.c:2795 tun_alloc_skb drivers/net/tun.c:1531 [inline] tun_get_user+0x23cf/0x6940 drivers/net/tun.c:1846 tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2048 call_write_iter include/linux/fs.h:1985 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x8ef/0x15c0 fs/read_write.c:584 ksys_write+0x20f/0x4c0 fs/read_write.c:637 __do_sys_write fs/read_write.c:649 [inline] __se_sys_write fs/read_write.c:646 [inline] __x64_sys_write+0x93/0xd0 fs/read_write.c:646 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd CPU: 0 PID: 4995 Comm: syz-executor153 Not tainted 6.6.0-rc1-syzkaller-00014-ga747acc0b752 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 6.4.164.14.326 ≤ v < 4.14.3274.19.295 ≤ v < 4.19.2965.10.195 ≤ v < 5.10.1985.15.132 ≤ v < 5.15.1345.4.257 ≤ v < 5.4.2586.1.53 ≤ v < 6.1.566.4.16 ≤ v < 6.56.5.3 ≤ v < 6.5.6177212bf6dc1ff2d13d0409cddc5c9e81feec63d3533e10272555c422a7d51ebc0ce8c483429f7f24.14.3264.19.2954b8a938e329ae4eb54b73b0c87b5170607b038a85.10.1955.15.1325.4.2576.1.536.4.166.5.36ecf09699eb1554299aa1e7fd13e9e80f656c2f97a7dd70cb954d3efa706a429687ded88c02496fa977ad86c2a1bcaf58f01ab98df5cc145083c489cd8171411a661253e6271fa10b65b46daf1b6471cec620c34f5fa5d055f9f6136a387755db6157712f8a7f10a1dccf9868ff09342a73dce27501b86df
Vendor states this is fixed in 1512d8f45d3c5d0b5baa00bd8e600492fa569f40 (fixed)
Vendor states this is fixed in 26df9ab5de308caa1503d937533c56c35793018d (fixed)
Vendor states this is fixed in 4600beae416d754a3cedbb1ecea8181ec05073b6 (fixed)
Vendor states this is fixed in 60d73c62e3e4464f375758b6f2459c13d46465b6 (fixed)
Vendor states this is fixed in 62c218124fe58372e0e1f60d5b634d21c264b337 (fixed)
Vendor states this is fixed in 6af289746a636f71f4c0535a9801774118486c7a (fixed)
Vendor states this is fixed in 73be49248a04746096339a48a33fa2f03bd85969 (fixed)
Vendor states this is fixed in a6f4d582e25d512c9b492670b6608436694357b3 (fixed)
Affected range stops below 4.14.327, so it looks safe — our inference, not a vendor statement
Affected range stops below 4.19.296, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.10.198, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.15.134, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.4.258, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.1.56, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.5, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.5.6, so it looks safe — our inference, not a vendor statement

References (8)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/1512d8f45d3c5d0b5baa00bd8e600492fa569f40
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/26df9ab5de308caa1503d937533c56c35793018d
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/4600beae416d754a3cedbb1ecea8181ec05073b6
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/60d73c62e3e4464f375758b6f2459c13d46465b6
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/62c218124fe58372e0e1f60d5b634d21c264b337
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/6af289746a636f71f4c0535a9801774118486c7a
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/73be49248a04746096339a48a33fa2f03bd85969
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/a6f4d582e25d512c9b492670b6608436694357b3

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-908

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card