SFIP: Coarse-Grained Syscall-Flow-Integrity Protection in Modern Systems

02/28/2022
by   Claudio Canella, et al.
0

Growing code bases of modern applications have led to a steady increase in the number of vulnerabilities. Control-Flow Integrity (CFI) is one promising mitigation that is more and more widely deployed and prevents numerous exploits. CFI focuses purely on one security domain. That is, transitions between user space and kernel space are not protected by CFI. Furthermore, if user space CFI is bypassed, the system and kernel interfaces remain unprotected, and an attacker can run arbitrary transitions. In this paper, we introduce the concept of syscall-flow-integrity protection (SFIP) that complements the concept of CFI with integrity for user-kernel transitions. Our proof-of-concept implementation relies on static analysis during compilation to automatically extract possible syscall transitions. An application can opt-in to SFIP by providing the extracted information to the kernel for runtime enforcement. The concept is built on three fully-automated pillars: First, a syscall state machine, representing possible transitions according to a syscall digraph model. Second, a syscall-origin mapping, which maps syscalls to the locations at which they can occur. Third, an efficient enforcement of syscall-flow integrity in a modified Linux kernel. In our evaluation, we show that SFIP can be applied to large scale applications with minimal slowdowns. In a micro- and a macrobenchmark, it only introduces an overhead of 13.1 demonstrate its effectiveness in preventing control-flow-hijacking attacks in real-world applications. Finally, to highlight the reduction in attack surface, we perform an analysis of the state machines and syscall-origin mappings of several real-world applications. On average, SFIP decreases the number of possible transitions by 38.6 is applied.

READ FULL TEXT
research
01/07/2023

SFP: Providing System Call Flow Protection against Software and Fault Attacks

With the improvements in computing technologies, edge devices in the Int...
research
12/09/2019

Camouflage: Hardware-assisted CFI for the ARM Linux kernel

Software control flow integrity (CFI) solutions have been applied to the...
research
12/14/2021

In-Kernel Control-Flow Integrity on Commodity OSes using ARM Pointer Authentication

This paper presents an in-kernel, hardware-based control-flow integrity ...
research
10/24/2018

On the Effectiveness of Type-based Control Flow Integrity

Control flow integrity (CFI) has received significant attention in the c...
research
01/31/2022

AnyCall: Fast and Flexible System-Call Aggregation

Operating systems rely on system calls to allow the controlled communica...
research
10/02/2019

Analyzing Control Flow Integrity with LLVM-CFI

Control-flow hijacking attacks are used to perform malicious com-putatio...
research
09/15/2018

On the Integrity of Cross-Origin JavaScripts

The same-origin policy is a fundamental part of the Web. Despite the res...

Please sign up or login with your details

Forgot password? Click here to reset