{"id":"CVE-2026-26399","details":"A stack-use-after-return issue exists in the Arduino_Core_STM32 library prior to version 1.7.0. The pwm_start() function allocates a TIM_HandleTypeDef structure on the stack and passes its address to HAL initialization routines, where it is stored in a global timer handle registry. After the function returns, interrupt service routines may dereference this dangling pointer, resulting in memory corruption.","modified":"2026-08-12T03:51:35.096054862Z","published":"2026-04-20T00:00:00Z","database_specific":{"cna_assigner":"mitre","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/26xxx/CVE-2026-26399.json"},"references":[{"type":"WEB","url":"https://github.com/stm32duino/Arduino_Core_STM32/releases/tag/1.6.1"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/26xxx/CVE-2026-26399.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-26399"},{"type":"PACKAGE","url":"https://github.com/Acen28/CVE-2026-26399-Disclosure"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/stm32duino/arduino_core_stm32","events":[{"introduced":"0"},{"fixed":"e6a56b3dec4ac1b715ca5eb94f0b51678be9cc60"}],"database_specific":{"source":"REFERENCES"}}],"versions":["1.6.0","1.5.0","1.4.0","1.3.0","1.2.0","2018.1.18","1.1.1","2017.11.24","1.1.0","2017.9.22","1.0.1","2017.8.31","1.0.0","STM32-2017.8.4","0.2.1","STM32-2017.7.13","0.2.0","STM32-2017.6.2","0.1.1","STM32-2017.5.12","0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-26399.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L"}]}