Hardware/Software Co-monitoring

05/10/2019
by   Li Lei, et al.
0

Hardware/Software (HW/SW) interfaces, mostly implemented as devices and device drivers, are pervasive in various computer systems. Nowadays HW/SW interfaces typically undergo intensive testing and validation before release, but they are still unreliable and insecure when deployed together with computer systems to end users. Escaped logic bugs, hardware transient failures, and malicious exploits are prevalent in HW/SW interactions, making the entire system vulnerable and unstable. We present HW/SW co-monitoring, a runtime co-verification approach to detecting failures and malicious exploits in device/driver interactions. Our approach utilizes a formal device model (FDM), a transaction-level model derived from the device specification, to shadow the real device execution. Based on the co-execution of the device and FDM, HW/SW co-monitoring carries out two-tier runtime checking: (1) device checking checks if the device behaviors conform to the FDM behaviors; (2) property checking detects invalid driver commands issued to the device by verifying system properties against driver/device interactions. We have applied HW/SW co-monitoring to five widely-used devices and their Linux drivers, discovering 9 real bugs and vulnerabilities while introducing modest runtime overhead. The results demonstrate the major potential of HW/SW co-monitoring in improving system reliability and security.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/27/2012

Automatic Verification of Message-Based Device Drivers

We develop a practical solution to the problem of automatic verification...
research
04/04/2023

Real-time Driver Monitoring Systems on Edge AI Device

As road accident cases are increasing due to the inattention of the driv...
research
10/15/2021

Minimum Viable Device Drivers for ARM TrustZone

While TrustZone can isolate IO hardware, it lacks drivers for modern IO ...
research
02/07/2022

μAFL: Non-intrusive Feedback-driven Fuzzing for Microcontroller Firmware

Fuzzing is one of the most effective approaches to finding software flaw...
research
05/04/2021

Automated Driver Testing for Small Footprint Embedded Systems

Embedded systems represent a billionaire market and are present in most ...
research
02/09/2023

Forensic Log Based Detection For Keystroke Injection "BadUsb" Attacks

This document describes an experiment with main purpose to detect BadUSB...
research
07/21/2021

Firmware Re-hosting Through Static Binary-level Porting

The rapid growth of the Industrial Internet of Things (IIoT) has brought...

Please sign up or login with your details

Forgot password? Click here to reset