Fuzzing trusted execution environments with Rust

被引:0
|
作者
Blinowski, Grzegorz [1 ]
Szaknis, Michal [2 ]
机构
[1] Warsaw Univ Technol, Inst Comp Sci, Nowowiejska 15 19, PL-00665 Warsaw, Poland
[2] Samsung R&D Inst Poland, Pl Europejski 1, PL-00844 Warsaw, Poland
关键词
Operating Systems Security; Operating System Fuzzing; Trusted Execution Environments; Rust;
D O I
10.1016/j.cose.2024.104196
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Fuzzing, a software testing technique, aims to uncover bugs by subjecting the target program to random inputs, thus discerning abnormal program behaviors such as crashes. In this paper, we present the design and implementation of a fuzzing framework designed to test TEEs (Trusted Execution Environment). Our framework leverages established software tools in a novel way: (1) We employ the Rust programming language in a two-way code generator: to translate fuzzer output to a sequence of system calls and in a "reverse translation" process, where sample code snippets are used to seed the fuzzer - a single API specification suffices for both endeavors; (2) Our fuzzer exhibits the ability to iteratively traverse the API's specification, scrutinize object dependencies, and judiciously reuse objects. These features significantly amplify its bug-finding prowess. (3) A versatile Rust proc macro mechanism is used to process the API specification. The fuzzer's code is built with the Rust compiler sans the necessity for additional specialized tools. (4) To enable the efficient stateful execution of TEEs, we have tailored the QEMU system emulator accordingly. To verify the usability and performance of our fuzzer, and to test various configuration options we conducted a series of tests with a popular open-source OP-TEE trusted operating system.
引用
收藏
页数:14
相关论文
共 50 条
  • [41] Secure and Efficient Mobile DNN Using Trusted Execution Environments
    Hu, Bin
    Wang, Yan
    Cheng, Jerry
    Zhao, Tianming
    Xie, Yucheng
    Guo, Xiaonan
    Chen, Yingying
    PROCEEDINGS OF THE 2023 ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, ASIA CCS 2023, 2023, : 274 - 285
  • [42] Time to Rethink: Trust Brokerage Using Trusted Execution Environments
    Koeberl, Patrick
    Phegade, Vinay
    Rajan, Anand
    Schneider, Thomas
    Schulz, Steffen
    Zhdanova, Maria
    TRUST AND TRUSTWORTHY COMPUTING, TRUST 2015, 2015, 9229 : 181 - 190
  • [43] TrustHealth: Enhancing eHealth Security with Blockchain and Trusted Execution Environments
    Li, Jun
    Luo, Xinman
    Lei, Hong
    ELECTRONICS, 2024, 13 (12)
  • [44] SoK: Understanding Designs Choices and Pitfalls of Trusted Execution Environments
    Li, Mengyuan
    Yang, Yuheng
    Chen, Guoxing
    Yan, Mengjia
    Zhang, Yinqian
    PROCEEDINGS OF THE 19TH ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, ACM ASIACCS 2024, 2024, : 1600 - 1616
  • [45] Formal Verification of Virtualization-Based Trusted Execution Environments
    Witharana, Hasini
    Weerasena, Hansika
    Mishra, Prabhat
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2024, 43 (11) : 4262 - 4273
  • [46] How Trusted Execution Environments Fuel Research on Microarchitectural Attacks
    Schwarz, Michael
    Gruss, Daniel
    IEEE SECURITY & PRIVACY, 2020, 18 (05) : 18 - 27
  • [47] Secret Sharing in Pub/Sub Using Trusted Execution Environments
    Munster, Javier
    Jacobsen, Hans-Arno
    DEBS'18: PROCEEDINGS OF THE 12TH ACM INTERNATIONAL CONFERENCE ON DISTRIBUTED AND EVENT-BASED SYSTEMS, 2018, : 28 - 39
  • [48] Preliminary Study of Trusted Execution Environments on Heterogeneous Edge Platforms
    Ning, Zhenyu
    Liao, Jinghui
    Zhang, Fengwei
    Shi, Weisong
    2018 THIRD IEEE/ACM SYMPOSIUM ON EDGE COMPUTING (SEC), 2018, : 421 - 426
  • [49] A Secure IIoT Gateway Architecture based on Trusted Execution Environments
    Antônio Augusto Fröhlich
    Leonardo Passig Horstmann
    José Luis Conradi Hoffmann
    Journal of Network and Systems Management, 2023, 31
  • [50] Mitigating Adversarial Attacks in Federated Learning with Trusted Execution Environments
    Queyrut, Simon
    Schiavoni, Valerio
    Felber, Pascal
    2023 IEEE 43RD INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS, ICDCS, 2023, : 626 - 637