JASMaint: Portable Multi-language Taint Analysis for the Web
This program is tentative and subject to change.
Modern web applications integrate JavaScript code with more efficient languages compiling to WebAssembly, such as C, C++ or Rust. However, such multi-language applications challenge program understanding and increase the risk of security attacks. Dynamic taint analysis is a powerful technique used to uncover confidentiality and integrity vulnerabilities. The state of the art has mainly considered taint analysis targeting a single programming language, extended with a limited set of native extensions. To deal with data flows between the language and native extensions, taint signatures or models of those extensions have been employed. However, this does not scale for multi-language web applications as the Wasm modules evolve continuously and generally do not include their source code.
This paper proposes JASMaint, the first taint analysis approach for multi-language web applications. A novel analysis orchestrator component manages the exchange of taint information during interoperation between our language-specific taint analyses. JASMaint is based on source code instrumentation for both the JavaScript and WebAssembly codebases. This choice enables deployment to all runtimes that support JavaScript and WebAssembly. We evaluate our approach on a benchmark suite of multi-language programs. Our evaluation shows that JASMaint reduces overtainting by 0.003% - 56.20% compared to a state-of-the-art approach for taint analysis based on function models. However, this comes at the cost of an increase in performance overhead by a factor of 1.14x - 1.61x relative to state of the art.
This program is tentative and subject to change.
Tue 14 OctDisplayed time zone: Perth change
10:50 - 12:05 | |||
10:50 25mTalk | Bringing Together Cross-ISA Checkpoint/Restoration and AOT Compilation of WebAssembly Programs MPLR Raiki Tamura Kyoto University, Daisuke Kotani Kyoto University, Kazuyuki Shudo Kyoto University, Yasuo Okabe Kyoto University | ||
11:15 25mTalk | A Snapshot of the Performance of Wasm Backends for Managed Languages MPLR | ||
11:40 25mTalk | JASMaint: Portable Multi-language Taint Analysis for the Web MPLR Abel Stuker Vrije Universiteit Brussel, Aäron Munsters Vrije Universiteit Brussel, Angel Luis Scull Pupo Vrije Universiteit Brussel, Laurent Christophe Vrije Universiteit Brussel, Elisa Gonzalez Boix Vrije Universiteit Brussel |