What’s Vulnerable › Vulnerabilities
CVE-2021-21257: Out-of-bounds write in RPL-Classic and RPL-Lite
- Severity: high (CVSS 7.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 1.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2021-06-18 · updated 2026-06-17
- Weakness: CWE-787
Description
Contiki-NG is an open-source, cross-platform operating system for internet of things devices. The RPL-Classic and RPL-Lite implementations in the Contiki-NG operating system versions prior to 4.6 do not validate the address pointer in the RPL source routing header This makes it possible for an attacker to cause out-of-bounds writes with packets injected into the network stack. Specifically, the problem lies in the rpl_ext_header_srh_update function in the two rpl-ext-header.c modules for RPL-Classic and RPL-Lite respectively. The addr_ptr variable is calculated using an unvalidated CMPR field value from the source routing header. An out-of-bounds write can be triggered on line 151 in os/net/routing/rpl-lite/rpl-ext-header.c and line 261 in os/net/routing/rpl-classic/rpl-ext-header.c, which contain the following memcpy call with addr_ptr as destination. The problem has been patched in Contiki-NG 4.6. Users can apply a patch out-of-band as a workaround.
Affected products
- contiki-ng: before 4.6 — fixed in 4.6
How to fix
Upgrade to a fixed version: contiki-ng 4.6. Check the vendor advisory for mitigations.
References
- https://github.com/contiki-ng/contiki-ng/pull/1431
- https://github.com/contiki-ng/contiki-ng/security/advisories/GHSA-mvc7-9p4q-c5cm
- https://github.com/contiki-ng/contiki-ng/pull/1431
- https://github.com/contiki-ng/contiki-ng/security/advisories/GHSA-mvc7-9p4q-c5cm
Get alerted when CVE-2021-21257 or the next vulnerability affects your stack