---
id: CVE-2026-55606
title: 'odhcpd: Stack buffer overread via DUID length endianness mismatch in memcmp()'
summary: >-
  odhcpd is the DHCPv6, DHCPv4, and router-advertisement server used by OpenWrt.
  In versions 25.12 and prior, odhcpd's DHCPv6 self-loop detection at
  dhcpv6.c:720 uses a network-byte-order DUID length value directly as the
  memcmp() size par…
severity: medium
cvss: 6.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L'
cvssSource: cna
cwe:
  - CWE-126
vendor: openwrt
product: odhcpd
affected:
  - odhcpd <= 25.12
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-10-29T17:43:15.504706Z'
exploitAvailable: true
published: '2026-10-23'
updated: '2026-10-29'
sourceUpdated: '2026-10-29T17:43:41.478Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-55606'
references:
  - url: 'https://github.com/openwrt/odhcpd/security/advisories/GHSA-x8x4-7gvf-gp45'
    label: 'https://github.com/openwrt/odhcpd/security/advisories/GHSA-x8x4-7gvf-gp45'
  - url: 'https://github.com/openwrt/odhcpd/pull/401'
    label: 'https://github.com/openwrt/odhcpd/pull/401'
  - url: >-
      https://github.com/openwrt/odhcpd/commit/6907f28f9ddeef9f69f5ee10bbc9ba8adc0ef57f
    label: >-
      https://github.com/openwrt/odhcpd/commit/6907f28f9ddeef9f69f5ee10bbc9ba8adc0ef57f
  - url: >-
      https://github.com/openwrt/odhcpd/commit/ed38cffa927d5fd450d20bfd3f7fb8d8e8fff301
    label: >-
      https://github.com/openwrt/odhcpd/commit/ed38cffa927d5fd450d20bfd3f7fb8d8e8fff301
tags:
  - cve.org
  - exploit-available
epss: 0.00466
epssPercentile: 0.40322
ingestedAt: '2026-10-23T14:28:08.714Z'
---

## Overview

odhcpd is the DHCPv6, DHCPv4, and router-advertisement server used by OpenWrt. In versions 25.12 and prior, odhcpd's DHCPv6 self-loop detection at dhcpv6.c:720 uses a network-byte-order DUID length value directly as the memcmp() size parameter. On little-endian hosts, this causes memcmp() to read far beyond the stack buffer — a single unauthenticated DHCPv6 packet triggers a 2560-byte overread from a 128-byte buffer. At time of publication, there are no publicly available patches.

## Affected

- `odhcpd <= 25.12`

## Remediation

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