{"id":"CVE-2018-19417","details":"An issue was discovered in the MQTT server in Contiki-NG before 4.2. The function parse_publish_vhdr() that parses MQTT PUBLISH messages with a variable length header uses memcpy to input data into a fixed size buffer. The allocated buffer can fit only MQTT_MAX_TOPIC_LENGTH (default 64) bytes, and a length check is missing. This could lead to Remote Code Execution via a stack-smashing attack (overwriting the function return address). Contiki-NG does not separate the MQTT server from other servers and the OS modules, so access to all memory regions is possible.","modified":"2026-04-09T06:14:48.104249Z","published":"2018-11-21T20:29:00.307Z","related":["MGASA-2019-0168"],"references":[{"type":"EVIDENCE","url":"https://github.com/contiki-ng/contiki-ng/issues/600"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/contiki-ng/contiki-ng","events":[{"introduced":"0"},{"fixed":"7b076e4af14b2259596f6d3765105d0593ae5257"}],"database_specific":{"versions":[{"introduced":"0"},{"fixed":"4.2"}]}}],"versions":["2.0","2.1","2.2","2.2.1","2.2.2","2.2.3","2.3","2.4","2.5-release","2.6","2.6-rc0","develop/v3.x-fork","develop/v4.0","fork","old/v2.0","old/v2.1","old/v2.2","old/v2.2.1","old/v2.2.2","old/v2.2.3","old/v2.3","old/v2.4","old/v2.6","release/v4.0","release/v4.1"],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2018-19417.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"}]}