CCFI-Cache: A transparent and flexible hardware protection for code and control-flow integrity

Jean Luc Danger, Adrien Facon, Sylvain Guilley, Karine Heydemann, Ulrich Kuhne, Abdelmalek Si Merabet, Michael Timbert

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

In this paper we present a hardware based solution to verify simultaneously Code and Control-Flow Integrity (CCFI), aiming at protecting microcontrollers against both cyber-and physical attacks. This solution is non-intrusive as it does not require any modification of the CPU core. It relies on two additional hardware blocks external to the CPU: The first one - called CCFI-cache - acts as a dedicated cache for the storage of information to check the code and control-flow integrity, and the second one - CCFI-checker - performs control-flow and code integrity verification. Based on a RISC-V platform implementation, we show that the proposed scheme is able to perform online CCFI validation at the price of a small hardware area overhead and doubling the size of the. text section. In most cases, the impact on the run-time performance is on average 32 percent, offering for the first time a generic and practical hardware-enabled cyber-security solution.

Original languageEnglish
Title of host publicationProceedings - 21st Euromicro Conference on Digital System Design, DSD 2018
EditorsNikos Konofaos, Martin Novotny, Amund Skavhaug
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages529-536
Number of pages8
ISBN (Electronic)9781538673768
DOIs
Publication statusPublished - 12 Oct 2018
Externally publishedYes
Event21st Euromicro Conference on Digital System Design, DSD 2018 - Prague, Czech Republic
Duration: 29 Aug 201831 Aug 2018

Publication series

NameProceedings - 21st Euromicro Conference on Digital System Design, DSD 2018

Conference

Conference21st Euromicro Conference on Digital System Design, DSD 2018
Country/TerritoryCzech Republic
CityPrague
Period29/08/1831/08/18

Keywords

  • Code Integrity
  • Control Flow Graph
  • Control-Flow Integrity
  • Cybersecurity
  • Hardware Protection
  • Hardware security
  • Instruction Hashing

Fingerprint

Dive into the research topics of 'CCFI-Cache: A transparent and flexible hardware protection for code and control-flow integrity'. Together they form a unique fingerprint.

Cite this