SIP Shaker: Software Integrity Protection Composition

09/25/2019
by   Mohsen Ahmadvand, et al.
0

Man-At-The-End (MATE) attackers are almighty adversaries against whom there exists no silver-bullet countermeasure. To raise the bar, a wide range of protection measures were proposed in the literature each of which adds resilience against certain attacks on certain digital assets of a program. Intuitively, composing a set of protections (rather than applying just one of them) can mitigate a wider range of attacks and hence offer a higher level of security. Despite the potential benefits, very limited research has been done on the composition of protections. Naive compositions could lead to conflicts which, in turn, limit the application of protections, raise false alarms, and worse yet, yield corrupted binaries. More importantly, inadequate compositions of such protections are not tailored for the program at hand and thus the offered security and performance are sub-optimal. In this paper, we first lay out a set of generic constraints for a conflict-free composition of protections. Then, we develop a composition framework based on a defense graph in which nodes and edges capture protections, their relations, and constraints. The conflicts problem together with optimization requirements are then translated into a set of integer constraints. We then use Integer Linear Programming (ILP) to handle conflicts while optimizing for a higher security and lower overhead. To measure the overhead, we use a set of real-world programs (MiBench dataset and open source games). Our evaluation results indicate that our composition framework reduces the overhead by ≈ 39 while maximizing the coverage. Moreover, our approach yields a 5-fold decrease in overhead compared to state-of-the-art heuristics.

READ FULL TEXT
research
11/10/2020

Guarding Serverless Applications with SecLambda

As an emerging application paradigm, serverless computing attracts atten...
research
02/19/2021

Toward Taming the Overhead Monster for Data-Flow Integrity

Data-Flow Integrity (DFI) is a well-known approach to effectively detect...
research
10/10/2017

Practical Integer Overflow Prevention

Integer overflows in commodity software are a main source for software b...
research
11/08/2018

Integrating Security in Resource-Constrained Cyber-Physical Systems

Defense mechanisms against network-level attacks are commonly based on t...
research
06/06/2022

CompartOS: CHERI Compartmentalization for Embedded Systems

Existing high-end embedded systems face frequent security attacks. Softw...
research
07/25/2023

Determining the Optimal Frequencies for a Duplicated Randomized Clock SCA Countermeasure

Side-channel attacks pose significant challenges to the security of embe...
research
03/25/2021

Multi-Execution Lattices Fast and Slow

Methods for automatically, soundly, and precisely guaranteeing the nonin...

Please sign up or login with your details

Forgot password? Click here to reset