Abstract
Dynamic taint analysis is a program analysis technique in which data is marked and its propagation is tracked while the program is executing. It is applied to solve problems in many fields, especially in software security. Current taint analysis platforms are limited to a single programming language, and therefore cannot support programs which, as is common today, are implemented in multiple programming languages. Current implementations of dynamic taint analysis also incur a significant performance overhead. In this paper we address both these limitations (1) by presenting our vision of a multi-language dynamic taint analysis platform, which is built around a language-Agnostic core framework that is extended by language-specific frontends and (2) by discussing the use of speculative optimization and dynamic compilation to reduce the execution overhead of dynamic taint analysis applications. An implementation of such a platformwould enable dynamic taint analyses that can target multiple languages in one analysis implementation and can track tainted data across language boundaries. We describe this approach in the context of the GraalVM runtime and its included JIT compiler, Graal, which allows us to target both dynamic and static languages. c 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM.
Original language | English |
---|---|
Title of host publication | MPLR 2019 - Proceedings of the 16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, co-located with SPLASH 2019 |
Editors | A. Hosking, I. Finocchi |
Publisher | Association for Computing Machinery, Inc |
Pages | 85-94 |
ISBN (Electronic) | 9781450369770 |
DOIs | |
Publication status | Published - 21 Oct 2019 |
Externally published | Yes |
Event | 16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, MPLR 2019, co-located with SPLASH 2019 - Athens, Greece Duration: 21 Oct 2019 → 22 Oct 2019 |
Conference
Conference | 16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, MPLR 2019, co-located with SPLASH 2019 |
---|---|
Country/Territory | Greece |
City | Athens |
Period | 21/10/19 → 22/10/19 |
Funding
∗This research project is partially funded by Oracle Labs.
Funders | Funder number |
---|---|
Oracle |