Severity by source
CVSS:4.0/AV:A/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Adjacent vector (LAN-only); AC:H because OPTION_PD_EXCLUDE prefix delegation must be actively configured; availability-only impact; no scope change.
AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
dhcpcd through 10.3.2, fixed in commit 5733d3c, contains a heap use-after-free vulnerability that allows unauthenticated same-link attackers to crash the daemon by sending a crafted DHCPv6 RENEW reply with RFC6603 OPTION_PD_EXCLUDE and both preferred and valid lifetimes set to zero. Attackers acting as or impersonating a DHCPv6 server can trigger dhcp6_deprecatedele() to free a delegated child address while an outer TAILQ_FOREACH_SAFE iterator in dhcp6_deprecateaddrs() still holds the freed pointer, causing a use-after-free when TAILQ_REMOVE is reached.
AnalysisAI
Heap use-after-free in dhcpcd through 10.3.2 enables unauthenticated same-link attackers - acting as or impersonating a DHCPv6 server - to crash the daemon by sending a crafted DHCPv6 RENEW reply exploiting a pointer lifecycle flaw in delegated prefix deprecation. The flaw triggers dhcp6_deprecatedele() to free a delegated child address while an outer TAILQ_FOREACH_SAFE iterator in dhcp6_deprecateaddrs() still retains the freed pointer, causing a use-after-free when TAILQ_REMOVE is subsequently reached. Impact is limited to availability (daemon crash); no public exploit or CISA KEV listing exists at time of analysis, but the adjacent-network attack vector and zero-privilege requirement lower the bar for local segment adversaries.
Technical ContextAI
dhcpcd (cpe:2.3:a:networkconfiguration:dhcpcd:*:*:*:*:*:*:*:*) is a portable DHCP client daemon used across Linux distributions including Arch Linux, Raspberry Pi OS, Alpine Linux, and many embedded platforms. The vulnerability is a CWE-416 (Use After Free) rooted in the DHCPv6 prefix delegation (PD) code path in src/dhcp6.c. RFC 7084 / RFC 3633 prefix delegation allows a DHCPv6 client to request address prefixes for sub-delegation; RFC 6603 OPTION_PD_EXCLUDE refines which prefixes the client must exclude from use. When a RENEW reply carries OPTION_PD_EXCLUDE with both preferred and valid lifetimes set to zero, dhcp6_deprecatedele() is called on the delegated child address and frees it. However, the calling function dhcp6_deprecateaddrs() iterates the address list with TAILQ_FOREACH_SAFE, which caches the 'next' pointer before the loop body runs. When the freed address is then encountered by TAILQ_REMOVE inside the same iteration, the freed heap pointer is dereferenced, triggering the use-after-free. The upstream fix (commit 5733d3c) converts dhcp6_deprecatedele() to return a boolean indicating whether a deletion occurred, then restarts the TAILQ iteration from the beginning (via 'goto again') if any deletion happened, avoiding the dangling pointer entirely.
RemediationAI
The primary remediation is to update dhcpcd to a version incorporating upstream commit 5733d3c59a5651f64357ac11c98b4f39895c8d25, available at https://github.com/NetworkConfiguration/dhcpcd/commit/5733d3c59a5651f64357ac11c98b4f39895c8d25. Since no tagged release version superseding 10.3.2 was identified in the provided data, administrators should monitor the upstream repository and their Linux distribution's package tracker for a patched release. As a compensating control where patching is not immediately possible, disabling DHCPv6 prefix delegation (PD) or removing OPTION_PD_EXCLUDE support from the dhcpcd configuration eliminates the vulnerable code path entirely - note this will prevent sub-delegation of prefixes to downstream interfaces. Restricting Layer-2 segment access and deploying DHCPv6 guard or RA guard features on managed switches can reduce the risk from rogue DHCPv6 server attacks, though these controls do not fix the underlying defect. VulnCheck's advisory is available at https://www.vulncheck.com/advisories/dhcpcd-heap-use-after-free-in-dhcp6-deprecateaddrs-via-dhcpv6-renew for additional context.
dhcpcd before 6.10.0, as used in Android 4.x before 4.4.4, 5.0.x before 5.0.2, 5.1.x before 5.1.1, and 6.x before 2016-0
dhcp6.c in dhcpcd before 6.11.7 and 7.x before 7.2.2 has a buffer over-read in the D6_OPTION_PD_EXCLUDE feature. Rated c
dhcpcd before 7.2.1 contains a buffer overflow in dhcp6_findna in dhcp6.c when reading NA/TA addresses. Rated critical s
Stack out-of-bounds write in dhcpcd (the widely-used DHCP/DHCPv6 client) through version 10.3.2 lets a same-link attacke
Stack-based buffer overflow in the get_packet method in socket.c in dhcpcd 3.2.3 allows remote attackers to cause a deni
dhcpcd before 6.10.0 allows remote attackers to cause a denial of service (invalid read and crash) via vectors related t
The decode_search function in dhcp.c in dhcpcd 3.x allows remote DHCP servers to cause a denial of service (out-of-bound
The decode_search function in dhcp.c in dhcpcd 3.x allows remote DHCP servers to cause a denial of service (out-of-bound
The decode_search function in dhcp.c in dhcpcd 3.x does not properly free allocated memory, which allows remote DHCP ser
Denial of service in dhcpcd through version 10.3.2 allows an adjacent-network attacker to exhaust memory in the daemon b
The print_option function in dhcp-common.c in dhcpcd through 6.9.1, as used in dhcp.c in dhcpcd 5.x in Android before 5.
The get_option function in dhcp.c in dhcpcd before 6.2.0, as used in dhcpcd 5.x in Android before 5.1 and other products
Same weakness CWE-416 – Use After Free
View allSame technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Micro 6.2 | Affected |
| openSUSE Leap 16.0 | Affected |
| SLES-CHOST-BYOS-Aliyun | Affected |
| SLES-CHOST-BYOS-Azure | Affected |
| SLES-CHOST-BYOS-EC2 | Affected |
| SLES-CHOST-BYOS-GCE | Affected |
| SLES-CHOST-BYOS-GDC | Affected |
| SLES-CHOST-BYOS-SAP-CCloud | Affected |
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-38491
GHSA-vh4p-87xg-jc4x