Document Type
Article
Keywords
Taint analysis, Static analysis, multilingual, security
Disciplines
Computer Engineering | Robotics
Abstract
It is increasingly common for software developers to leverage the features and ease-of-use of different languages in building software systems. Nonetheless, interaction between different languages has proven to be a source of software engineering concerns. Existing static analysis tools handle the software engineering concerns of monolingual software but there is little general work for multilingual systems despite the increasing visibility of these systems. While recent work in this area has greatly extended the scope of multilingual static analysis systems, the focus has still been on a primary, host language interacting with subsidiary, guest language functions. In this paper we propose a novel approach that does not privilege any one language and has a modular way to include new languages. We present an approach to multilingual taint analysis (a security oriented static analysis method) as a ‘meta-level’ algorithm which includes monolingual static analysis as a special case. A complexity analysis of the taint analysis algorithm is presented along with a detailed ‘deep’ multilingual example with Python and C/C++ software. A performance analysis is presented on a collection of 20 public, multilingual repositories selected from github. Our results show an average of 76% improved coverage using our algorithm when compared to monolingual taint analysis.
Publication Title
International Conference on Software and Data Technologies(ICSOFT)
Volume
2021
Article Number
1083
Publication Date
Summer 2021
Language
English
Recommended Citation
Lyons, Damian and Becaj, Dino, "A Meta-Level Approach for Multilingual Taint Analysis" (2021). Faculty Publications. 74.
https://research.library.fordham.edu/frcv_facultypubs/74
Version
Published
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.