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.
Thu 5 OctDisplayed time zone: Bogota, Lima, Quito, Rio Branco change
15:30 - 17:00 | Program AnalysisResearch Track / Journal First Track / Industry Track at Session 2 Room - RGD 04 Chair(s): Fabio Petrillo École de technologie supérieure (ÉTS), Montréal -- Université du Québec, Mark Hills Appalachian State University | ||
15:30 16mTalk | Slicing Shared-Memory Concurrent Programs, The Threaded System Dependence Graph Revisited Research Track Carlos Galindo Universitat Politècnica de València, Marisa Llorens Universitat Politècnica de València, Sergio Perez Rubio Universitat Politècnica de València, Josep Silva Universitat Politècnica de València | ||
15:46 16mTalk | An Expressive and Modular Layer Activation Mechanism for Context-Oriented Programming Journal First Track Paul Leger Universidad Católica del Norte, Chile, Nicolás Cardozo Universidad de los Andes, Hidehiko Masuhara Tokyo Institute of Technology Link to publication DOI | ||
16:02 16mTalk | Dynamic Slicing of WebAssembly Binaries Research Track Quentin Stiévenart Université du Québec à Montréal (UQAM), David Binkley Loyola University Maryland, Coen De Roover Vrije Universiteit Brussel Pre-print | ||
16:18 11mTalk | OLA: Property Directed Outer Loop Abstraction for Efficient Verification of Reactive Systems Industry Track | ||
16:29 16mTalk | A Component-Sensitive Static Analysis Based Approach for Modeling Intents in Android Apps Research Track Negarsadat Abolhassani University of Southern California, William G.J. Halfond University of Southern California | ||
16:45 15mLive Q&A | 1:1 Q&A Research Track |