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...
Autores principales: | , , , |
---|---|
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 |