{"schemaVersion":3,"id":"CVE-2020-10070","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"In the Zephyr Project MQTT code, improper bounds checking can result in memory corruption and possibly remote code execution. NCC-ZEP-031 This issue affects: zephyrproject-rtos zephyr version 2.2.0 and later versions.","dates":{"published":"2020-06-05T17:37:37.459Z","modified":"2024-09-16T23:06:22.833Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":9.8,"severity":"critical","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":9,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":9.8,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false},{"version":"2.0","versionLabel":"v2.0","source":"NVD","score":7.5,"severity":"high","vector":"AV:N/AC:L/Au:N/C:P/I:P/A:P","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.02879,"percentile":0.86661,"severity":"low","asOf":"2026-10-20T00:00:00.000Z","change":{"pp":0,"baselineDate":"2026-09-20T00:00:00.000Z","baselineScore":0.02879},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.02879,"percentile":0.86661}],"last30":[{"date":"2026-09-20T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.02879,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.02879,"percentile":0.86661}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-120","name":"Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')","description":"The product copies an input buffer to an output buffer without verifying that the size of the input buffer is less than the size of the output buffer.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/120.html"},{"id":"CWE-190","name":"Integer Overflow or Wraparound","description":"The product performs a calculation that can\n         produce an integer overflow or wraparound when the logic\n         assumes that the resulting value will always be larger than\n         the original value. This occurs when an integer value is\n         incremented to a value that is too large to store in the\n         associated representation. When this occurs, the value may\n         become a very small or negative number.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"Medium","url":"https://cwe.mitre.org/data/definitions/190.html"}],"affected":[{"vendor":"zephyrproject-rtos","product":"zephyr","name":"Zephyr","label":"zephyr","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 2.2.0, < unspecified","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.2.0, < unspecified","eol":null,"hubHref":"/vendor/zephyrproject-rtos/zephyr"},{"vendor":"zephyrproject","product":"zephyr","name":"zephyr","label":"zephyr","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 2.2.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≤ 2.2.0","eol":null,"hubHref":"/vendor/zephyrproject/zephyr"}],"affectedCount":2,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://research.nccgroup.com/2020/05/26/research-report-zephyr-and-mcuboot-security-assessment","label":"research.nccgroup.com/2020/05/26/research-report-zephyr-and-mcuboot-security-assessment","hostname":"research.nccgroup.com","tags":["X Refsource MISC","Third Party Advisory"]},{"url":"https://zephyrprojectsec.atlassian.net/browse/ZEPSEC-85","label":"zephyrprojectsec.atlassian.net/browse/ZEPSEC-85","hostname":"zephyrprojectsec.atlassian.net","tags":["X Refsource MISC","Third Party Advisory"]},{"url":"https://docs.zephyrproject.org/latest/security/vulnerabilities.html#cve-2020-10070","label":"docs.zephyrproject.org/latest/security/vulnerabilities.html","hostname":"docs.zephyrproject.org","tags":["X Refsource MISC","Vendor Advisory"]},{"url":"https://github.com/zephyrproject-rtos/zephyr/pull/23821/commits/0b39cbf3c01d7feec9d0dd7cc7e0e374b6113542","label":"github.com/zephyrproject-rtos/zephyr/pull/23821/commits/0b39cbf3c01d7feec9d0dd7cc7e0e374b6113542","hostname":"github.com","tags":["X Refsource MISC","Patch","Third Party Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2020-06-05T17:37:37.459Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2024-09-16T23:06:22.833Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":70,"level":"high","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-21T09:07:09.613Z","stale":false,"partial":false}}