METAEMU: An Architecture Agnostic Rehosting Framework for Automotive Firmware<bold> </bold>

被引:3
作者
Chen, Zitai [1 ]
Thomas, Sam L. [2 ]
Garcia, Flavio D. [1 ]
机构
[1] Univ Birmingham, Birmingham, W Midlands, England
[2] BINARLY, Pasadena, CA USA
来源
PROCEEDINGS OF THE 2022 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, CCS 2022 | 2022年
基金
英国工程与自然科学研究理事会;
关键词
automotive; dynamic program analysis; firmware; emulation<bold>; </bold>;
D O I
10.1145/3548606.3559338
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
In this paper we present MetaEmu, an architecture-agnostic framework geared towards rehosting and security analysis of automotive firmware. MetaEmu improves over existing rehosting environments in two ways: Firstly, it solves the hitherto open-problem of a lack of generic Virtual Execution Environments (VXEs) by synthesizing processor simulators from Ghidra's language definitions. Secondly, MetaEmu can rehost and analyze multiple targets, each of different architecture, simultaneously, and share analysis facts between each target's analysis environment, a technique we call inter-device analysis. We show that the flexibility afforded by our approach does not lead to a performance trade-off-MetaEmu lifts rehosted firmware to an optimized intermediate representation, and provides performance comparable to existing emulation tools, such as Unicorn. Our evaluation spans five different architectures, bare-metal and RTOS-based firmware, and three kinds of automotive Electronic Control Unit (ECU) from four distinct vendors-none of which can be rehosted or emulated by current tools, due to lack of processor support. Further, we show how MetaEmu enables a diverse set of analyses by implementing a fuzzer, a symbolic executor for solving peripheral access checks, a CAN ID reverse engineering tool, and an inter-device coverage tracker.<bold> </bold>
引用
收藏
页码:515 / 529
页数:15
相关论文
共 61 条
  • [1] Aho A. V., 2006, COMPILERS PRINCIPLES, V2nd
  • [2] Airbus CyberSecurity, 2018, Fuzzing exotic arch with AFL using ghidra emulator
  • [3] Bellard Fabirce, 2003, QEMU: A generic and open source machine emulator and virtualizer
  • [4] Device-agnostic Firmware Execution is Possible: A Concolic Execution Approach for Peripheral Emulation
    Cao, Chen
    Guan, Le
    Ming, Jiang
    Liu, Peng
    [J]. 36TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2020), 2020, : 746 - 759
  • [5] Checkoway S., 2011, P 20 USENIX C SEC SE, V2011, P77
  • [6] Chen Zitai, 2022, MetaEmu supplementary material
  • [7] Chen Zitai, 2022, MetaEmu source code
  • [8] Clements AA, 2020, PROCEEDINGS OF THE 29TH USENIX SECURITY SYMPOSIUM, P1201
  • [9] Clements Abraham A., 2021, P 2021 NDSS WORKSH B
  • [10] HardSnap: Leveraging Hardware Snapshotting for Embedded Systems Security Testing
    Corteggiani, Nassim
    Francillon, Aurelien
    [J]. 2020 50TH ANNUAL IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS (DSN 2020), 2020, : 294 - 305