@inproceedings{a6b1a9eff904421c8e0d40a4ef2ddba6,
title = "BackFlow: Backward Edge Control Flow Enforcement for Low End ARM Microcontrollers",
abstract = "This paper presents BackFlow, a compiler-based toolchain that enforces indirect backward edge control flow integrity for low-end ARM Cortex-M microprocessors. BackFlow is implemented within the Clang/LLVM compiler and supports the ARM instruction set and its subset Thumb. The control flow integrity generated by the compiler relies on a bitmap, where each set bit indicates a valid pointer destination. The efficiency of the framework is benchmarked using an STM32 NUCLEO F446RE microcontroller. The obtained results show that the control flow integrity solution incurs an execution time overhead ranging from 1.5 to 4.5%.",
keywords = "CFI, Compiler, Memory Safety",
author = "Cyril Bresch and Roman Lysecky and David Hely",
note = "Publisher Copyright: {\textcopyright} 2020 EDAA.; 2020 Design, Automation and Test in Europe Conference and Exhibition, DATE 2020 ; Conference date: 09-03-2020 Through 13-03-2020",
year = "2020",
month = mar,
doi = "10.23919/DATE48585.2020.9116396",
language = "English (US)",
series = "Proceedings of the 2020 Design, Automation and Test in Europe Conference and Exhibition, DATE 2020",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "1606--1609",
editor = "{Di Natale}, Giorgio and Cristiana Bolchini and Elena-Ioana Vatajelu",
booktitle = "Proceedings of the 2020 Design, Automation and Test in Europe Conference and Exhibition, DATE 2020",
}