Inception: System-Wide Security Testing of Real-World Embedded Systems Software

被引:0
|
作者
Corteggiani, Nassim [1 ,2 ]
Camurati, Giovanni [2 ]
Francillon, Aurelien [2 ]
机构
[1] Maxim Integrated, San Jose, CA 95134 USA
[2] EURECOM, Biot, France
关键词
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Connected embedded systems are becoming widely deployed, and their security is a serious concern. Current techniques for security testing of embedded software rely either on source code or on binaries. Detecting vulnerabilities by testing binary code is harder, because source code semantics are lost. Unfortunately, in embedded systems, high-level source code (C/C++) is often mixed with hand-written assembly, which cannot be directly handled by current source-based tools. In this paper we introduce Inception, a framework to perform security testing of complete real-world embedded firmware. Inception introduces novel techniques for symbolic execution in embedded systems. In particular, Inception Translator generates and merges LLVM bitcode from high-level source code, hand-written assembly, binary libraries, and part of the processor hardware behavior. This design reduces differences with real execution as well as the manual effort. The source code semantics are preserved, improving the effectiveness of security checks. Inception Symbolic Virtual Machine, based on K-LEE, performs symbolic execution, using several strategies to handle different levels of memory abstractions, interaction with peripherals, and interrupts. Finally, the Inception Debugger is a high-performance JTAG debugger which performs redirection of memory accesses to the real hardware. We first validate our implementation using 53000 tests comparing Inception's execution to concrete execution on an Arm Cortex-M3 chip. We then show Inception's advantages on a benchmark made of 1624 synthetic vulnerable programs, four real-world open source and industrial applications, and 19 demos. We discovered eight crashes and two previously unknown vulnerabilities, demonstrating the effectiveness of Inception as a tool to assist embedded device firmware testing.
引用
收藏
页码:309 / 326
页数:18
相关论文
共 50 条
  • [1] An Experience in Testing the Security of Real-World Electronic Voting Systems
    Balzarotti, Davide
    Banks, Greg
    Cova, Marco
    Felmetsger, Viktoria
    Kemmerer, Richard A.
    Robertson, William
    Valeur, Fredrik
    Vigna, Giovanni
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2010, 36 (04) : 453 - 473
  • [2] Software usage metrics for real-world software testing
    Ryan, L
    IEEE SPECTRUM, 1998, 35 (04) : 64 - 68
  • [3] Work-in-Progress: Probabilistic system-wide DVFS for real-time embedded systems
    Medina, Roberto
    Cucu-Grosjean, Liliana
    2019 IEEE 40TH REAL-TIME SYSTEMS SYMPOSIUM (RTSS 2019), 2019, : 508 - 511
  • [4] A Generalized Framework for System-Wide Energy Savings in Hard Real-Time Embedded Systems
    Zeng, Gang
    Tomiyama, Hiroyuki
    Takada, Hiroaki
    Ishihara, Tohru
    EUC 2008: PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING, VOL 1, MAIN CONFERENCE, 2008, : 206 - +
  • [5] Security Testing and Compliance for Online Banking in Real-World
    Chen, Hao
    Corriveau, Jean-Pierre
    IMECS 2009: INTERNATIONAL MULTI-CONFERENCE OF ENGINEERS AND COMPUTER SCIENTISTS, VOLS I AND II, 2009, : 1039 - 1043
  • [6] REAL-WORLD INDEPENDENT TESTING OF EASPECTS SOFTWARE (RITES)
    Mair, G.
    Bath, P.
    Muir, K.
    Von Kummer, R.
    Salman, R. Al-Shahi
    Sandercock, P.
    Macleod, M.
    Sprigg, N.
    White, P.
    Wardlaw, J.
    INTERNATIONAL JOURNAL OF STROKE, 2020, 15 (1_SUPPL) : 33 - 33
  • [7] Testing Radar and EW Systems for the Real-World
    Lu, Dingqing
    MICROWAVE JOURNAL, 2012, 55 (07) : 56 - +
  • [8] Testing and testing techniques for real-time embedded software systems
    Tracey, N
    McDermid, J
    MICROPROCESSORS AND MICROSYSTEMS, 2001, 24 (09) : 441 - 441
  • [9] Parallel Symbolic Execution for Automated Real-World Software Testing
    Bucur, Stefan
    Ureche, Vlad
    Zamfir, Cristian
    Candea, George
    EUROSYS 11: PROCEEDINGS OF THE EUROSYS 2011 CONFERENCE, 2011, : 183 - 197
  • [10] Software module hones system-wide practices
    van Os, Menno
    OIL & GAS JOURNAL, 2006, 104 (37) : 56 - +