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.
References
Link | Resource |
---|---|
https://github.com/contiki-ng/contiki-ng/pull/1431 | Patch Third Party Advisory |
https://github.com/contiki-ng/contiki-ng/security/advisories/GHSA-mvc7-9p4q-c5cm | Patch Third Party Advisory |
Configurations
History
No history.
Information
Published : 2021-06-18 21:15
Updated : 2024-02-28 18:28
NVD link : CVE-2021-21257
Mitre link : CVE-2021-21257
CVE.ORG link : CVE-2021-21257
JSON object : View
Products Affected
contiki-ng
- contiki-ng
CWE
CWE-787
Out-of-bounds Write