Cargando…

Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V

In recent decades, there has been an increasing number of studies on control flow integrity (CFI), particularly those implementing hardware-assisted CFI solutions that utilize a special instruction set extension. More recently, ARM and Intel, which are prominent processor architectures, also announc...

Descripción completa

Detalles Bibliográficos
Autores principales: Park, Seonghwan, Kang, Dongwook, Kang, Jeonghwan, Kwon, Donghyun
Formato: Online Artículo Texto
Lenguaje:English
Publicado: MDPI 2022
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8963021/
https://www.ncbi.nlm.nih.gov/pubmed/35214295
http://dx.doi.org/10.3390/s22041392
_version_ 1784677902550302720
author Park, Seonghwan
Kang, Dongwook
Kang, Jeonghwan
Kwon, Donghyun
author_facet Park, Seonghwan
Kang, Dongwook
Kang, Jeonghwan
Kwon, Donghyun
author_sort Park, Seonghwan
collection PubMed
description In recent decades, there has been an increasing number of studies on control flow integrity (CFI), particularly those implementing hardware-assisted CFI solutions that utilize a special instruction set extension. More recently, ARM and Intel, which are prominent processor architectures, also announced instruction set extensions for CFI called branch target identification (BTI) and control-flow enhancement technology (CET), respectively. However, according to our preliminary analysis, they do not support various CFI solutions in an efficient and scalable manner. In this study, we propose Bratter, a new instruction set extension for forward CFI solutions on RISC-V. At the center of Bratter, there are Branch Tag Registers and dedicated instructions for these registers. We implemented well-known CFI solutions (i.e., branch regulation and function signature check) using Bratter to evaluate its performance. Our experimental results show that, by using Bratter, even when these two solutions work together, they impose only 1.20% and 5.99% overhead for code size and execution time, respectively.
format Online
Article
Text
id pubmed-8963021
institution National Center for Biotechnology Information
language English
publishDate 2022
publisher MDPI
record_format MEDLINE/PubMed
spelling pubmed-89630212022-03-30 Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V Park, Seonghwan Kang, Dongwook Kang, Jeonghwan Kwon, Donghyun Sensors (Basel) Article In recent decades, there has been an increasing number of studies on control flow integrity (CFI), particularly those implementing hardware-assisted CFI solutions that utilize a special instruction set extension. More recently, ARM and Intel, which are prominent processor architectures, also announced instruction set extensions for CFI called branch target identification (BTI) and control-flow enhancement technology (CET), respectively. However, according to our preliminary analysis, they do not support various CFI solutions in an efficient and scalable manner. In this study, we propose Bratter, a new instruction set extension for forward CFI solutions on RISC-V. At the center of Bratter, there are Branch Tag Registers and dedicated instructions for these registers. We implemented well-known CFI solutions (i.e., branch regulation and function signature check) using Bratter to evaluate its performance. Our experimental results show that, by using Bratter, even when these two solutions work together, they impose only 1.20% and 5.99% overhead for code size and execution time, respectively. MDPI 2022-02-11 /pmc/articles/PMC8963021/ /pubmed/35214295 http://dx.doi.org/10.3390/s22041392 Text en © 2022 by the authors. https://creativecommons.org/licenses/by/4.0/Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
spellingShingle Article
Park, Seonghwan
Kang, Dongwook
Kang, Jeonghwan
Kwon, Donghyun
Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title_full Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title_fullStr Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title_full_unstemmed Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title_short Bratter: An Instruction Set Extension for Forward Control-Flow Integrity in RISC-V
title_sort bratter: an instruction set extension for forward control-flow integrity in risc-v
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8963021/
https://www.ncbi.nlm.nih.gov/pubmed/35214295
http://dx.doi.org/10.3390/s22041392
work_keys_str_mv AT parkseonghwan bratteraninstructionsetextensionforforwardcontrolflowintegrityinriscv
AT kangdongwook bratteraninstructionsetextensionforforwardcontrolflowintegrityinriscv
AT kangjeonghwan bratteraninstructionsetextensionforforwardcontrolflowintegrityinriscv
AT kwondonghyun bratteraninstructionsetextensionforforwardcontrolflowintegrityinriscv