3
IRUS TotalDownloads
SaBRe: load-time selective binary rewriting
File | Description | Size | Format | |
---|---|---|---|---|
![]() | Published version | 524.46 kB | Adobe PDF | View/Open |
Title: | SaBRe: load-time selective binary rewriting |
Authors: | Arras, P-A Andronidis, A Pina, L Mituzas, K Shu, Q Grumberg, D Cadar, C |
Item Type: | Journal Article |
Abstract: | Binary rewriting consists in disassembling a program to modify its instructions. However, existing solutions suffer from shortcomings in terms of soundness and performance. We present SaBRe, a load-time system for selective binary rewriting. SaBRe rewrites specific constructs—particularly system calls and functions—when the program is loaded into memory, and intercepts them using plugins through a simple API. We also discuss the theoretical underpinnings of disassembling and rewriting. We developed two backends—for x86_64 and RISC-V—which were used to implement three plugins: a fast system call tracer, a multi-version executor, and a fault injector. Our evaluation shows that SaBRe imposes little overhead, typically below 3%. |
Issue Date: | 21-Jan-2022 |
Date of Acceptance: | 20-Dec-2021 |
URI: | http://hdl.handle.net/10044/1/94548 |
DOI: | 10.1007/s10009-021-00644-w |
ISSN: | 0945-8115 |
Publisher: | Springer |
Start Page: | 205 |
End Page: | 223 |
Journal / Book Title: | International Journal on Software Tools for Technology Transfer |
Volume: | 24 |
Copyright Statement: | © The Author(s) 2022. Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/. |
Sponsor/Funder: | Engineering & Physical Science Research Council (EPSRC) European Research Council (ERC) |
Funder's Grant Number: | EP/L002795/1 819141 |
Keywords: | Science & Technology Technology Computer Science, Software Engineering Computer Science Selective binary rewriting x86_64 RISC-V System call tracing Multi-version execution Fault injection Science & Technology Technology Computer Science, Software Engineering Computer Science Selective binary rewriting x86_64 RISC-V System call tracing Multi-version execution Fault injection 0803 Computer Software Software Engineering |
Publication Status: | Published |
Online Publication Date: | 2022-01-21 |
Appears in Collections: | Computing Faculty of Engineering |
This item is licensed under a Creative Commons License