Projects per year
Abstract
The recently introduced WebAssembly standard aims to form a portable compilation target, enabling the cross-platform distribution of programs written in a variety of languages. In this paper, we propose and investigate the first dynamic slicing approaches for WebAssembly. Given a program and a location in that program, a program slice is a reduced version of the program that preserves the behavior at the given location. Slicing has numerous applications in software maintenance and evolution, including reverse engineering, code comprehension, and quality assurance.
Our dynamic approaches are built on Observational-Based Slicing (ORBS). We explore the design space for instantiating ORBS for WebAssembly: for example, it can be applied to the whole program or to only the function containing the slicing criterion, and it can be applied before compilation to WebAssembly or afterwards. We evaluate the slices produced quantitatively and qualitatively, and compare them to those obtained by a state-of-the-art static slicer for WebAssembly. Our evaluation reveals that dynamic slicing at the level of a function from a WebAssembly binary finds a sweet spot in terms of slice time and slice size.
Our dynamic approaches are built on Observational-Based Slicing (ORBS). We explore the design space for instantiating ORBS for WebAssembly: for example, it can be applied to the whole program or to only the function containing the slicing criterion, and it can be applied before compilation to WebAssembly or afterwards. We evaluate the slices produced quantitatively and qualitatively, and compare them to those obtained by a state-of-the-art static slicer for WebAssembly. Our evaluation reveals that dynamic slicing at the level of a function from a WebAssembly binary finds a sweet spot in terms of slice time and slice size.
Original language | English |
---|---|
Title of host publication | Proceedings of the 39th IEEE International Conference on Software Maintenance and Evolution (ICSME 2023) |
Publisher | IEEE |
Number of pages | 13 |
Publication status | Accepted/In press - 2023 |
Event | 39th IEEE International Conference on Software Maintenance and Evolution - Bogota, Colombia Duration: 1 Oct 2023 → 6 Oct 2023 Conference number: 39 |
Conference
Conference | 39th IEEE International Conference on Software Maintenance and Evolution |
---|---|
Abbreviated title | ICSME 2023 |
Country/Territory | Colombia |
City | Bogota |
Period | 1/10/23 → 6/10/23 |
Keywords
- dynamic program slicing
- WebAssembly
- program analysis
Fingerprint
Dive into the research topics of 'Dynamic Slicing of WebAssembly Binaries'. Together they form a unique fingerprint.Projects
- 1 Active
-
VLAAI2: Subsidie Onderzoeksprogramma "Cybersecurity Initiative Flanders"
De Meuter, W., Devriese, D., Gonzalez Boix, E. & De Roover, C.
1/09/19 → 31/12/23
Project: Applied