Skip to main navigation Skip to search Skip to main content

Supporting dynamic analysis for multi-language applications

Project Details

Description

WebAssembly (Wasm) is a binary format that can be used as an execution target for many different programming languages, even allowing the use of multiple languages within one application. Multilanguage support is interesting as it enables the use of dedicated languages for different requirements. However, there are unaddressed issues with the development of such applications, mainly related to program comprehension and code quality. Developers typically use dynamic analysis tools for understanding and managing program complexity. However, current dynamic analysis frameworks for Wasm are too limited. We identified three main limitations in the state-of-the-art, which we believe hamper the use of dynamic analysis for Wasm. First, current approaches cannot modify the target program runtime state. This makes it impossible to implement analyses that require runtime mutation, e.g. program repair. Second, developers need to implement the analyses at the bytecode level, losing access to high-level code. Finally, any reasoning about interoperation between languages is not supported.
We aim to build a binary instrumentation platform that tackles these challenges. First, we will investigate support for runtime modifications. Second, devise a uniform interface that allows developers to write analyses in terms of high-level operations. Finally, we will augment the interface with interoperability support to devise a multi-language dynamic analysis framework for Wasm.
AcronymFWOSB193
StatusActive
Effective start/end date1/11/2431/10/28

Keywords

  • Software and application security
  • Software quality for multi-language applications
  • Software and its engineering; dynamic analysis

Flemish discipline codes in use since 2023

  • Coding tools and techniques, testing and debugging
  • Programming languages and technologies
  • Cloud computing
  • Language design, constructs and features
  • Language processors

Fingerprint

Explore the research topics touched on by this project. These labels are generated based on the underlying awards/grants. Together they form a unique fingerprint.