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
来源
PROCEEDINGS OF THE 14TH ACM SIGSAC WORKSHOP ON PROGRAMMING LANGUAGES AND ANALYSIS FOR SECURITY (PLAS '19) | 2019年
基金
瑞典研究理事会;
关键词
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
相关论文
共 49 条
  • [1] Acar G., 2013, P 2013 ACM SIGSAC C, P1129, DOI DOI 10.1145/2508859.2516674
  • [2] The Web Never Forgets: Persistent Tracking Mechanisms in the Wild
    Acar, Gunes
    Eubank, Christian
    Englehardt, Steven
    Juarez, Marc
    Narayanan, Arvind
    Diaz, Claudia
    [J]. CCS'14: PROCEEDINGS OF THE 21ST ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2014, : 674 - 689
  • [3] [Anonymous], 1982, CRYPTOGRAPHY DATA SE, DOI DOI 10.5555/539308
  • [4] [Anonymous], 2002, THESIS
  • [5] [Anonymous], CROSS SITE SCRIPTING
  • [6] [Anonymous], 2011, NDSS
  • [7] Austin TH, 2012, POPL 12: PROCEEDINGS OF THE 39TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, P165
  • [8] Austin Thomas H., 2010, WORKSH PROGR LANG AN, V3
  • [9] Austin Thomas H., 2009, P ACM SIGPLAN 4 WORK, P113, DOI DOI 10.1145/1554339.1554353
  • [10] We Are Family: Relating Information-Flow Trackers
    Balliu, Musard
    Schoepe, Daniel
    Sabelfeld, Andrei
    [J]. COMPUTER SECURITY - ESORICS 2017, PT I, 2018, 10492 : 124 - 145