Description
ConnMan through 2.0 has a stack-based buffer overflow via a DHCPv6 Reply message. This occurs in get_domains in gdhcp/client.c. It copies a fixed NS_MAXDNAME (1025) bytes from a DHCPv6 DOMAIN_LIST (option 24) value into a 1026-byte stack buffer dns_name regardless of the actual option length, then walks DNS labels with an unbounded "c += jump + 1" loop. A crafted DHCPv6 REPLY with a DOMAIN_LIST option of >= 1025 non-zero bytes makes the label walk leave the buffer and read/write '.' past its end in attacker-chosen strides. An on-link attacker can trigger this without authentication via a forged Router Advertisement (O=1) and a forged DHCPv6 REPLY matching xid/CLIENTID with a long DOMAIN_LIST. The impact is unauthenticated on-link crash of connmand (runs as root). This was introduced in bb06c47.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| ConnMan | ConnMan | ≤ 2.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | connman | No fix yet | — |
| Debian 13 | connman | No fix yet | — |
| Debian 12 | connman | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | connman | No fix yet | — |
| Ubuntu 26.04 LTS | connman | No fix yet | — |
| Ubuntu 24.04 LTS | connman | No fix yet | — |
| Ubuntu 22.04 LTS | connman | No fix yet | — |
| Ubuntu 20.04 LTS | connman | No fix yet | — |
Show 2 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 18.04 LTS | connman | No fix yet | — |
| Ubuntu Pro 16.04 LTS | connman | No fix yet | — |
References
- https://lore.kernel.org/connman/179274561161.81299.4579745057858200074@pm.me/ third-party-advisory
- https://git.kernel.org/pub/scm/network/connman/connman.git/tree/gdhcp/client.c product
- https://git.kernel.org/pub/scm/network/connman/connman.git/commit/?id=bb06c47101ca243fa5c04fb4b03fe2a12420d280 product