IoT Firmware Emulation and Its Security Application in Fuzzing: A Critical Revisit

被引:0
作者
Zhou, Wei [1 ]
Shen, Shandian [1 ]
Liu, Peng [2 ]
机构
[1] Huazhong Univ Sci & Technol, Sch Cyber Sci & Engn, Wuhan 430074, Peoples R China
[2] Penn State Univ, Coll Informat Sci & Technol, University Pk, PA 16802 USA
基金
中国国家自然科学基金; 美国国家科学基金会;
关键词
IoT devices; MCU; firmware; vulnerability detection; peripheral modeling; firmware emulation; fuzz testing; hardware-in-the-loop;
D O I
10.3390/fi17010019
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
As IoT devices with microcontroller (MCU)-based firmware become more common in our lives, memory corruption vulnerabilities in their firmware are increasingly targeted by adversaries. Fuzzing is a powerful method for detecting these vulnerabilities, but it poses unique challenges when applied to IoT devices. Direct fuzzing on these devices is inefficient, and recent efforts have shifted towards creating emulation environments for dynamic firmware testing. However, unlike traditional software, firmware interactions with peripherals that are significantly more diverse presents new challenges for achieving scalable full-system emulation and effective fuzzing. This paper reviews 27 state-of-the-art works in MCU-based firmware emulation and its applications in fuzzing. Instead of classifying existing techniques based on their capabilities and features, we first identify the fundamental challenges faced by firmware emulation and fuzzing. We then revisit recent studies, organizing them according to the specific challenges they address, and discussing how each specific challenge is addressed. We compare the emulation fidelity and bug detection capabilities of various techniques to clearly demonstrate their strengths and weaknesses, aiding users in selecting or combining tools to meet their needs. Finally, we highlight the remaining technical gaps and point out important future research directions in firmware emulation and fuzzing.
引用
收藏
页数:20
相关论文
共 58 条
  • [1] Challenges in Designing Exploit Mitigations for Deeply Embedded Systems
    Abbasi, Ali
    Wetzels, Jos
    Holz, Thorsten
    Etalle, Sandro
    [J]. 2019 4TH IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY (EUROS&P), 2019, : 31 - 46
  • [2] Agency N.S, NSA's Research Directorat Ghidra
  • [3] [Anonymous], FreeRTOS
  • [4] [Anonymous], STM32CubeMX - STM32Cube initialization code generator - STMicroelectronics
  • [5] Ba JS, 2022, PROCEEDINGS OF THE 31ST USENIX SECURITY SYMPOSIUM, P3255
  • [6] Baktash JA, 2023, Arxiv, DOI [arXiv:2305.03195, 10.48550/arXiv.2305.03195, DOI 10.48550/ARXIV.2305.03195]
  • [7] Bellard F, 2005, USENIX Association Proceedings of the FREENIX/Open Source Track, P41
  • [8] Directed Greybox Fuzzing
    Bohme, Marcel
    Van-Thuan Pham
    Manh-Dung Nguyen
    Roychoudhury, Abhik
    [J]. CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 2329 - 2344
  • [9] 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
  • [10] Towards Automated Dynamic Analysis for Linux-based Embedded Firmware
    Chen, Daming D.
    Egele, Manuel
    Woo, Maverick
    Brumley, David
    [J]. 23RD ANNUAL NETWORK AND DISTRIBUTED SYSTEM SECURITY SYMPOSIUM (NDSS 2016), 2016,