ReCFA: Resilient Control-Flow Attestation

10/22/2021
by   Yumei Zhang, et al.
0

Recent IoT applications gradually adapt more complicated end systems with commodity software. Ensuring the runtime integrity of these software is a challenging task for the remote controller or cloud services. Popular enforcement is the runtime remote attestation which requires the end system (prover) to generate evidence for its runtime behavior and a remote trusted verifier to attest the evidence. Control-flow attestation is a kind of runtime attestation that provides diagnoses towards the remote control-flow hijacking at the prover. Most of these attestation approaches focus on small or embedded software. The recent advance to attesting complicated software depends on the source code and execution-profiling CFG to measure the subpaths, which may be incomplete and unavailable for commodity software. In this work, we propose a resilient control-flow attestation (ReCFA), which does not need the offline measurement of all legitimate control-flow paths, thus scalable to be used on complicated commodity software. Our main contribution is a multi-phase approach to condensing the runtime control-flow events; as a result, the vast amount of control-flow events are abstracted into a deliverable size. The condensing approach consists of filtering skippable call sites, folding program-structure related control-flow events, and a greedy compression. Our approach is implemented with binary-level static analysis and instrumentation. We employ a shadow stack mechanism at the verifier to enforce context-sensitive control-flow integrity and diagnose the compromised control-flow events violating the security policy. The experimental results on real-world benchmarks show both the efficiency of the control-flow condensing and the effectiveness of security enforcement.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/20/2018

SCARR: A Novel Scalable Runtime Remote Attestation

Runtime remote attestation is a technique that allows to validate the co...
research
03/24/2021

DIALED: Data Integrity Attestation for Low-end Embedded Devices

Verifying integrity of software execution in low-end micro-controller un...
research
03/07/2023

ISC-FLAT: On the Conflict Between Control Flow Attestation and Real-Time Operations

The wide adoption of IoT gadgets and Cyber-Physical Systems (CPS) makes ...
research
02/09/2018

OEI: Operation Execution Integrity for Embedded Devices

We formulate a new security property, called "Operation Execution Integr...
research
03/12/2020

Control-flow Flattening Preserves the Constant-Time Policy (Extended Version)

Obfuscating compilers protect a software by obscuring its meaning and im...
research
05/06/2019

DeepCheck: A Non-intrusive Control-flow Integrity Checking based on Deep Learning

Code reuse attack (CRA) is a powerful attack that reuses existing codes ...
research
12/08/2020

Control Flow Obfuscation for FJ using Continuation Passing

Control flow obfuscation deters software reverse engineering attempts by...

Please sign up or login with your details

Forgot password? Click here to reset