Towards efficient, multi-language dynamic taint analysis

Jacob Kreindl, Daniele Bonetta, Hanspeter Mössenböck

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

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 languageEnglish
Title of host publicationMPLR 2019 - Proceedings of the 16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, co-located with SPLASH 2019
EditorsA. Hosking, I. Finocchi
PublisherAssociation for Computing Machinery, Inc
Pages85-94
ISBN (Electronic)9781450369770
DOIs
Publication statusPublished - 21 Oct 2019
Externally publishedYes
Event16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, MPLR 2019, co-located with SPLASH 2019 - Athens, Greece
Duration: 21 Oct 201922 Oct 2019

Conference

Conference16th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes, MPLR 2019, co-located with SPLASH 2019
Country/TerritoryGreece
CityAthens
Period21/10/1922/10/19

Funding

∗This research project is partially funded by Oracle Labs.

FundersFunder number
Oracle

    Fingerprint

    Dive into the research topics of 'Towards efficient, multi-language dynamic taint analysis'. Together they form a unique fingerprint.

    Cite this