Vulnerability · Published May 8, 2023 · Assigned by GitHub_M
CVE-2023-31129Contiki-NG missing NULL pointer check in IPv6 neighbor discovery
High 7.5
In plain English
A high-severity null pointer dereference in contiki-ng from contiki-ng. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 51% of all known vulnerabilities).
Official description
The Contiki-NG operating system versions 4.8 and prior can be triggered to dereference a NULL pointer in the message handling code for IPv6 router solicitiations. Contiki-NG contains an implementation of IPv6 Neighbor Discovery (ND) in the module `os/net/ipv6/uip-nd6.c`. The ND protocol includes a message type called Router Solicitation (RS), which is used to locate routers and update their address information via the SLLAO (Source Link-Layer Address Option). If the indicated source address changes, a given neighbor entry is set to the STALE state. The message handler does not check for RS messages with an SLLAO that indicates a link-layer address change that a neighbor entry can actually be created for the indicated address. The resulting pointer is used without a check, leading to the dereference of a NULL pointer of type `uip_ds6_nbr_t`. The problem has been patched in the `develop` branch of Contiki-NG, and will be included in the upcoming 4.9 release. As a workaround, users can apply Contiki-NG pull request #2271 to patch the problem directly.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| contiki-ng | contiki-ng | <= 4.8 |
Weakness: CWE-476 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
References
- https://github.com/contiki-ng/contiki-ng/security/advisories/GHSA-x29r-5qjg-75mq x_refsource_CONFIRM
- https://github.com/contiki-ng/contiki-ng/pull/2271 x_refsource_MISC