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 条
  • [41] A large-scale empirical study of code smells in Java']JavaScript projects
    Johannes, David
    Khomh, Foutse
    Antoniol, Giuliano
    SOFTWARE QUALITY JOURNAL, 2019, 27 (03) : 1271 - 1314
  • [42] Development nature matters: An empirical study of code clones in Java']JavaScript applications
    Cheung, Wai Ting
    Ryu, Sukyoung
    Kim, Sunghun
    EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (02) : 517 - 564
  • [43] Java']JavaScript tools for online information retrieval
    Gamage, Ruwan
    Dong, Hui
    ONLINE INFORMATION REVIEW, 2006, 30 (04) : 380 - 394
  • [44] Inlined Information Flow Monitoring for Java']JavaScript
    Chudnov, Andrey
    Naumann, David A.
    CCS'15: PROCEEDINGS OF THE 22ND ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2015, : 629 - 643
  • [45] Replacing a hospital information system: an example of a real-world case study
    Sikkel, K
    Spil, TAM
    van de Weg, RLW
    12TH CONFERENCE ON SOFTWARE ENGINEERING EDUCATION AND TRAINING, PROCEEDINGS, 1999, : 6 - 15
  • [46] Metric Tree-Like Structures in Real-World Networks: An Empirical Study
    Abu-Ata, Muad
    Dragan, Feodor F.
    NETWORKS, 2016, 67 (01) : 49 - 68
  • [47] An Empirical Study on Engineering a Real-World Smart Ward Using Pervasive Technologies
    Liao, Chun-Feng
    Yen, Yu-Chun
    Huang, Yu-Chiao
    Fu, Li-Chen
    IEEE SYSTEMS JOURNAL, 2018, 12 (01): : 240 - 249
  • [48] An empirical real-world study of losses disguised as wins in electronic gaming machines
    Leino, Tony
    Torsheim, Torbjorn
    Pallesen, Stale
    Blaszczynski, Alex
    Sagoe, Dominic
    Molde, Helge
    International Gambling Studies, 2016, 16 (03) : 470 - 480
  • [49] EEG reading with or without clinical information - a real-world practice study
    Nascimento, Fabio A.
    Jing, Jin
    Beniczky, Sandor
    Olandoski, Marcia
    Benbadis, Selim R.
    Cole, Andrew J.
    Westover, M. Brandon
    NEUROPHYSIOLOGIE CLINIQUE-CLINICAL NEUROPHYSIOLOGY, 2022, 52 (05): : 394 - 397
  • [50] Replacing a hospital information system: an example of a real-world case study
    Sikkel, Klaas
    Spil, Ton A.M.
    van de Weg, Rob L.W.
    Software Engineering Education Conference, Proceedings, 1999, : 6 - 15