Efficient Dynamic Access Analysis Using Java']JavaScript Proxies

被引:2
|
作者
Keil, Matthias [1 ]
Thiemann, Peter [1 ]
机构
[1] Univ Freiburg, Inst Comp Sci, D-79106 Freiburg, Germany
关键词
Access Permission Contracts; !text type='Java']Java[!/text]Script; Proxies; Design; Languages; Security; Verification; DERIVATIVES; CHECKING; SYSTEM; DESIGN; JML;
D O I
10.1145/2508168.2508176
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
JSConTest introduced the notions of effect monitoring and dynamic effect inference for JavaScript. It enables the description of effects with path specifications resembling regular expressions. It is implemented by an offline source code transformation. To overcome the limitations of the JSConTest implementation, we redesigned and reimplemented effect monitoring by taking advantange of JavaScript proxies. Our new design avoids all drawbacks of the prior implementation. It guarantees full interposition; it is not restricted to a subset of JavaScript; it is self-maintaining; and its scalability to large programs is significantly better than with JSConTest. The improved scalability has two sources. First, the reimplementation is significantly faster than the original, transformationbased implementation. Second, the reimplementation relies on the fly-weight pattern and on trace reduction to conserve memory. Only the combination of these techniques enables monitoring and inference for large programs.
引用
收藏
页码:49 / 60
页数:12
相关论文
共 50 条
  • [21] Efficient Static Vulnerability Analysis for Java']JavaScript with Multiversion Dependency Graphs
    Ferreira, Mafalda
    Monteiro, Miguel
    Brito, Tiago
    Coimbra, Miguel E.
    Santos, Nuno
    Jia, Limin
    Fragoso Santos, Jose
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (PLDI):
  • [22] All new interactive web access to TAO data using Java']JavaScript
    Zhu, WH
    Burger, EF
    McClurg, DC
    Denbo, DW
    Soreide, NN
    [J]. FOURTH SYMPOSIUM ON INTEGRATED OBSERVING SYSTEMS, 2000, : 160 - 163
  • [23] Determining Dynamic Coupling in Java']JavaScript Using Object Type Inference
    Nicolay, Jens
    Noguera, Carlos
    De Roover, Coen
    De Meuter, Wolfgang
    [J]. 2013 IEEE 13TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2013, : 126 - 135
  • [24] All new interactive web access to TAO data using Java']JavaScript
    Zhu, WH
    Burger, EF
    McClurg, DC
    Denbo, DW
    Soreide, NN
    [J]. 16TH INTERNATIONAL CONFERENCE ON INTERACTIVE INFORMATION AND PROCESSING SYSTEMS (IIPS) FOR METEOROLOGY, OCEANOGRAPHY AND HYDROLOGY, 2000, : 260 - 263
  • [25] JS']JSXGraph - Dynamic Mathematics with Java']JavaScript
    Gerhaeuser, Michael
    Valentin, Bianca
    Wassermann, Alfred
    [J]. INTERNATIONAL JOURNAL FOR TECHNOLOGY IN MATHEMATICS EDUCATION, 2010, 17 (04): : 211 - 215
  • [26] Dynamic code compression for Java']JavaScript engine
    Park, Hyukwoo
    Kim, Seonghyun
    Bae, Boram
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2023, 53 (05): : 1196 - 1217
  • [27] Precise String Analysis for Java']JavaScript Programs Using Automata
    Almashfi, Nabil
    Lu, Lunjin
    Picker, Koby
    Maldonado, Christian
    [J]. 2019 8TH INTERNATIONAL CONFERENCE ON SOFTWARE AND COMPUTER APPLICATIONS (ICSCA 2019), 2019, : 159 - 166
  • [28] Supervised categorization of Java']JavaScript™ using program analysis features
    Lu, W
    Kan, MY
    [J]. INFORMATION RETRIEVAL TECHNOLOGY, PROCEEDINGS, 2005, 3689 : 160 - 173
  • [29] Analysis of Java']JavaScript Web Applications Using SAFE 2.0
    Park, Jihyeok
    Ryou, Yeonhee
    Park, Joonyoung
    Ryu, Sukyoung
    [J]. PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 59 - 62
  • [30] INTRODUCTION TO SIMULATION USING JAVA']JAVASCRIPT
    Wagner, Gerd
    [J]. 2016 WINTER SIMULATION CONFERENCE (WSC), 2016, : 148 - 162