2014
DOI: 10.1007/978-3-642-54807-9_12
|View full text |Cite
|
Sign up to set email alerts
|

String Analysis for Dynamic Field Access

Abstract: Abstract. In JavaScript, and scripting languages in general, dynamic field access is a commonly used feature. Unfortunately, current static analysis tools either completely ignore dynamic field access or use overly conservative approximations that lead to poor precision and scalability.We present new string domains to reason about dynamic field access in a static analysis tool. A key feature of the domains is that the equal, concatenate and join operations take O(1) time.Experimental evaluation on four common … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
30
0

Year Published

2017
2017
2024
2024

Publication Types

Select...
5
5

Relationship

1
9

Authors

Journals

citations
Cited by 32 publications
(30 citation statements)
references
References 15 publications
0
30
0
Order By: Relevance
“…Analogously, Richards et al [2010], Richards et al [2011], and Wei et al [2016] conducted a similar study, but in this case targeting JavaScript's dynamic behavior and in particular the eval function. Also for JavaScript, Madsen and Andreasen [2014] analyzed how fields are accessed via strings, while Jang et al [2010] analyzed privacy violations. Similar empirical studies were done for PHP [Dahse and Holz 2015;Doyle and Walden 2011;Hills et al 2013] and Swift [Rebouças et al 2016].…”
Section: Empirical Studies Of Large Code Basesmentioning
confidence: 99%
“…Analogously, Richards et al [2010], Richards et al [2011], and Wei et al [2016] conducted a similar study, but in this case targeting JavaScript's dynamic behavior and in particular the eval function. Also for JavaScript, Madsen and Andreasen [2014] analyzed how fields are accessed via strings, while Jang et al [2010] analyzed privacy violations. Similar empirical studies were done for PHP [Dahse and Holz 2015;Doyle and Walden 2011;Hills et al 2013] and Swift [Rebouças et al 2016].…”
Section: Empirical Studies Of Large Code Basesmentioning
confidence: 99%
“…Several research tools, including TAJS [Jensen et al 2009], WALA [Sridharan et al 2012], SAFE [Lee et al 2012], and JSAI [Kashyap et al 2014], have been developed in recent years to address this challenge. A notable trend is that analysis precision is being increased in many directions, including high degrees of context sensitivity [Andreasen and Mùller 2014], aggressive loop unrolling [Park and Ryu 2015], and sophisticated abstract domains for strings [Amadini et al 2017;Madsen and Andreasen 2014;Park et al 2016], to enable analysis of real-world JavaScript programs.…”
Section: Introductionmentioning
confidence: 99%
“…Researchers have developed various static analysis frameworks [11,12,17] for JavaScript, and suggested techniques to improve analysis precision such as loop specialization [1,24,31], adaptive context-sensitivity [32], and advanced analysis domains [20,23]. Analysis precision may be improved by repeating the following process: 1. Check if an analysis is precise enough to prove properties of interest.…”
Section: Introductionmentioning
confidence: 99%