Litcius/Paper detail

Westworld: Fuzzing-Assisted Remote Dynamic Symbolic Execution of Smart Apps on IoT Cloud Platforms

Lannan Luo, Qiang Zeng, Bokai Yang, Fei Zuo, Junzhe Wang

2021Annual Computer Security Applications Conference16 citationsDOI

Abstract

Existing symbolic execution typically assumes the analyzer can control the I/O environment and/or access the library code, which, however, is not the case when programs run on a remote proprietary execution environment managed by another party. For example, SmartThings, one of the most popular IoT platforms, is such a cloud-based execution environment. For programmers who write automation applications to be deployed on IoT cloud platforms, it raises significant challenges when they want to systematically test their code and find bugs. We propose fuzzing-assisted remote dynamic symbolic execution, which uses dynamic symbolic execution as backbone and utilizes fuzzing when necessary to automatically test programs running in a remote proprietary execution environment over which the analyzer has little control. As a case study, we enable it for analyzing smart apps running on SmartThings. We have developed a prototype and the evaluation shows that it is effective in testing smart apps and finding bugs.

Topics & Concepts

Fuzz testingComputer scienceSymbolic executionCloud computingCode (set theory)Embedded systemOperating systemCode coverageProgramming languageSoftwareSet (abstract data type)Software Testing and Debugging TechniquesAdvanced Malware Detection TechniquesSoftware System Performance and Reliability
Westworld: Fuzzing-Assisted Remote Dynamic Symbolic Execution of Smart Apps on IoT Cloud Platforms | Litcius