An Empirical Study of Information Flows in Real-World Java']JavaScript

被引:18
|
作者
Staicu, Cristian-Alexandru [1 ]
Schoepe, Daniel [2 ]
Balliu, Musard [3 ]
Pradel, Michael [1 ]
Sabelfeld, Andrei [2 ]
机构
[1] Tech Univ Darmstadt, Darmstadt, Germany
[2] Chalmers Univ Technol, Gothenburg, Sweden
[3] KTH Royal Inst Technol, Stockholm, Sweden
基金
瑞典研究理事会;
关键词
information flow control; taint tracking; !text type='Java']Java[!/text]Script; implicit flow;
D O I
10.1145/3338504.3357339
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Information flow analysis prevents secret or untrusted data from flowing into public or trusted sinks. Existing mechanisms cover a wide array of options, ranging from lightweight taint analysis to heavyweight information flow control that also considers implicit flows. Dynamic analysis, which is particularly popular for languages such as JavaScript, faces the question whether to invest in analyzing flows caused by not executing a particular branch, so-called hidden implicit flows. This paper addresses the questions how common different kinds of flows are in real-world programs, how important these flows are to enforce security policies, and how costly it is to consider these flows. We address these questions in an empirical study that analyzes 56 real-world JavaScript programs that suffer from various security problems, such as code injection vulnerabilities, denial of service vulnerabilities, memory leaks, and privacy leaks. The study is based on a state-of-the-art dynamic information flow analysis and a formalization of its core. We find that implicit flows are expensive to track in terms of permissiveness, label creep, and runtime overhead. We find a lightweight taint analysis to be sufficient for most of the studied security problems, while for some privacy-related code, observable tracking is sometimes required. In contrast, we do not find any evidence that tracking hidden implicit flows reveals otherwise missed security problems. Our results help security analysts and analysis designers to understand the cost-benefit tradeoffs of information flow analysis and provide empirical evidence that analyzing information flows in a cost-effective way is a relevant problem.
引用
收藏
页码:45 / 59
页数:15
相关论文
共 50 条
  • [11] An empirical study of privacy-violating information flows in JavaScript web applications
    Dept. of Computer Science and Engineering, University of California, San Diego, United States
    Proc ACM Conf Computer Commun Secur, (270-283):
  • [12] APR4Vul: an empirical study of automatic program repair techniques on real-world Java']Java vulnerabilities
    Bui, Quang-Cuong
    Paramitha, Ranindya
    Vu, Duc-Ly
    Massacci, Fabio
    Scandariato, Riccardo
    EMPIRICAL SOFTWARE ENGINEERING, 2024, 29 (01)
  • [13] Real Men Do Java']JavaScript! Programming the World in a Browser
    Thomas, Dave
    JOURNAL OF OBJECT TECHNOLOGY, 2008, 7 (08): : 35 - 39
  • [14] An Empirical Study of README contents for Java']JavaScript Packages
    Ikeda, Shohei
    Ihara, Akinori
    Kula, Raula Gaikovina
    Matsumoto, Kenichi
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2019, E102D (02): : 280 - 288
  • [15] Empirical study of the dynamic behavior of Java']JavaScript objects
    Wei, Shiyi
    Xhakaj, Franceska
    Ryder, Barbara G.
    SOFTWARE-PRACTICE & EXPERIENCE, 2016, 46 (07): : 867 - 889
  • [16] Performance Issues and Optimizations in Java']JavaScript: An Empirical Study
    Selakovic, Marija
    Pradel, Michael
    2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2016, : 61 - 72
  • [17] An Empirical Study of Code Smells in Java']JavaScript Projects
    Saboury, Amir
    Musavi, Pooya
    Khomh, Foutse
    Antoniol, Giulio
    2017 IEEE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), 2017, : 294 - 305
  • [18] APR4Vul: an empirical study of automatic program repair techniques on real-world Java vulnerabilities
    Quang-Cuong Bui
    Ranindya Paramitha
    Duc-Ly Vu
    Fabio Massacci
    Riccardo Scandariato
    Empirical Software Engineering, 2024, 29
  • [19] Real-world study: from real-world data to real-world evidence
    Wen, Yi
    TRANSLATIONAL BREAST CANCER RESEARCH, 2020, 1
  • [20] Numerical simulation of real-world flows
    Hayase, Toshiyuki
    FLUID DYNAMICS RESEARCH, 2015, 47 (05)