Karolis Mituzas - Profile on Academia.edu (original) (raw)

Karolis Mituzas

Address: Manchester, Manchester, United Kingdom

less

Judith L Green related author profile picture

Richard Kahn related author profile picture

E. Wayne Ross related author profile picture

Don Ross related author profile picture

K.A.Narayanankutty Kotheneth related author profile picture

Càndid Reig related author profile picture

José Ferreira-Alves related author profile picture

Giulia Sissa related author profile picture

Hatice Kafadar related author profile picture

Jessica  Ringrose related author profile picture

Uploads

Papers by Karolis Mituzas

Research paper thumbnail of SaBRe: Load-time selective binary rewriting

Binary rewriting is a technique that consists in disassembling a program to modify its instructio... more Binary rewriting is a technique that consists in disassembling a program to modify its instructions, with many applications, e.g. monitoring, debugging, reverse engineering and reliability. However, existing solutions suffer from well-known shortcomings in terms of soundness, performance and usability. We present SaBRe, a novel load-time framework for selective binary rewriting. SaBRe rewrites specific constructs of interest — mainly system calls and function prologues — when the program is loaded into memory. This enables users to intercept those constructs at runtime via a modular architecture allowing custom plugins to be linked with SaBRe using a simple and flexible API. We also discuss the theoretical underpinnings of disassembling and rewriting, including conditions for coverage, accuracy, and correctness; and how they affect SaBRe. We developed two backends for SaBRe — one for x86_64 and one for RISC-V — which were in turn used to implement two open-source plugins: a fast sys...

Research paper thumbnail of SaBRe: Load-time selective binary rewriting

Binary rewriting is a technique that consists in disassembling a program to modify its instructio... more Binary rewriting is a technique that consists in disassembling a program to modify its instructions, with many applications, e.g. monitoring, debugging, reverse engineering and reliability. However, existing solutions suffer from well-known shortcomings in terms of soundness, performance and usability. We present SaBRe, a novel load-time framework for selective binary rewriting. SaBRe rewrites specific constructs of interest — mainly system calls and function prologues — when the program is loaded into memory. This enables users to intercept those constructs at runtime via a modular architecture allowing custom plugins to be linked with SaBRe using a simple and flexible API. We also discuss the theoretical underpinnings of disassembling and rewriting, including conditions for coverage, accuracy, and correctness; and how they affect SaBRe. We developed two backends for SaBRe — one for x86_64 and one for RISC-V — which were in turn used to implement two open-source plugins: a fast sys...

Log In