Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. HALucinator: Firmware Re-hosting Through Abstraction Layer Emulation
 
conference paper

HALucinator: Firmware Re-hosting Through Abstraction Layer Emulation

Clements, Abraham A.
•
Gustafson, Eric
•
Scharnowski, Tobias
Show more
January 1, 2020
Proceedings Of The 29Th Usenix Security Symposium
29th USENIX Security Symposium

Given the increasing ubiquity of online embedded devices, analyzing their firmware is important to security, privacy, and safety. The tight coupling between hardware and firmware and the diversity found in embedded systems makes it hard to perform dynamic analysis on firmware. However, firmware developers regularly develop code using abstractions, such as Hardware Abstraction Layers (HALs), to simplify their job. We leverage such abstractions as the basis for the re-hosting and analysis of firmware. By providing high-level replacements for HAL functions (a process termed High-Level Emulation - HLE), we decouple the hardware from the firmware. This approach works by first locating the library functions in a firmware sample, through binary analysis, and then providing generic implementations of these functions in a full-system emulator.

We present these ideas in a prototype system, HALucinator, able to re-host firmware, and allow the virtual device to be used normally. First, we introduce extensions to existing library matching techniques that are needed to identify library functions in binary firmware, to reduce collisions, and for inferring additional function names. Next, we demonstrate the re-hosting process, through the use of simplified handlers and peripheral models, which make the process fast, flexible, and portable between firmware samples and chip vendors. Finally, we demonstrate the practicality of HLE for security analysis, by supplementing HALucinator with the American Fuzzy Lop fuzzer, to locate multiple previously-unknown vulnerabilities in firmware middleware libraries.

  • Details
  • Metrics
Type
conference paper
Web of Science ID

WOS:000668146200068

Author(s)
Clements, Abraham A.
Gustafson, Eric
Scharnowski, Tobias
Grosen, Paul
Fritz, David
Kruegel, Christopher
Vigna, Giovanni
Bagchi, Saurabh
Payer, Mathias  
Date Issued

2020-01-01

Publisher

USENIX ASSOC

Publisher place

Berkeley

Published in
Proceedings Of The 29Th Usenix Security Symposium
ISBN of the book

978-1-939133-17-5

Start page

1201

End page

1218

Subjects

Computer Science, Information Systems

•

Computer Science

•

simulation

•

system

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
HEXHIVE  
Event nameEvent placeEvent date
29th USENIX Security Symposium

ELECTR NETWORK

Aug 12-14, 2020

Available on Infoscience
August 14, 2021
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/180676
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés