Detecting and Understanding Java']JavaScript Global Identifier Conflicts on the Web

被引:7
|
作者
Zhang, Mingxue [1 ]
Meng, Wei [1 ]
机构
[1] Chinese Univ Hong Kong Hong, Hong Kong, Peoples R China
关键词
!text type='Java']Java[!/text]Script; Identifier conflicts; Web applications;
D O I
10.1145/3368089.3409747
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
JavaScript is widely used for implementing client-side web applications, and it is common to include JavaScript code from many different hosts. However, in a web browser, all the scripts loaded in the same frame share a single global namespace. As a result, a script may read or even overwrite the global objects or functions in other scripts, causing unexpected behaviors. For example, a script can redefine a function in a different script as an object, so that any call of that function would cause an exception at run time. We systematically investigate the client-side JavaScript code integrity problem caused by JavaScript global identifier conflicts in this paper. We developed a browser-based analysis framework, JSO(BSERVER), to collect and analyze the write operations to global memory locations by JavaScript code. We identified three categories of conflicts using JSO(BSERVER) on the Alexa top 100K websites, and detected 145,918 conflicts on 31,615 websites. We reveal that JavaScript global identifier conflicts are prevalent and could cause behavior deviation at run time. In particular, we discovered that 1,611 redefined functions were called after being overwritten, and many scripts modified the value of cookies or redefined cookie-related functions. Our research demonstrated that JavaScript global identifier conflict is an emerging threat to both the web users and the integrity of web applications.
引用
收藏
页码:38 / 49
页数:12
相关论文
共 50 条
  • [41] Practical AJAX Race Detection for Java']JavaScript Web Applications
    Adamsen, Christoffer Quist
    Moller, Anders
    Alimadadi, Saba
    Tip, Frank
    ESEC/FSE'18: PROCEEDINGS OF THE 2018 26TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2018, : 38 - 48
  • [42] JS']JSOPT: A Framework for Optimization of Java']JavaScript on Web Browsers
    Waqas, Muhammad
    Khan, Minhaj Ahmad
    MEHRAN UNIVERSITY RESEARCH JOURNAL OF ENGINEERING AND TECHNOLOGY, 2018, 37 (01) : 95 - 104
  • [43] Concurrent Java']JavaScript Parsing for Faster Loading of Web Apps
    Park, Hyukwoo
    Cha, Myungsu
    Moon, Soo-Mook
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2016, 13 (04)
  • [44] A java']javaScript-based scientific Web-calculator
    Boix, O
    Garcia-Fernandez, J
    Mujal, RM
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2005, 13 (02) : 153 - 157
  • [45] Model-Based Development of Java']JavaScript Web Applications
    Wagner, Gerd
    CURRENT TRENDS IN WEB ENGINEERING, ICWE 2017, 2018, 10544 : 267 - 268
  • [46] Java']JavaScript for the World Wide Web: Visual QuickStart guide
    Hawley, T
    TECHNICAL COMMUNICATION, 2004, 51 (02) : 314 - 315
  • [47] On Estimating Platforms of Web User with Java']JavaScript Math Object
    Saito, Takamichi
    Noda, Takafumi
    Hosoya, Ryohei
    Tanabe, Kazuhisa
    Saito, Yuta
    ADVANCES IN NETWORK-BASED INFORMATION SYSTEMS, NBIS-2018, 2019, 22 : 407 - 418
  • [48] WEB BASED DYNAMIC MODELING BY MEANS OF PHP AND JAVA']JAVASCRIPT
    Valek, Jan
    Sladek, Petr
    INFORMATION AND COMMUNICATION TECHNOLOGY IN EDUCATION, 2012, : 291 - 301
  • [49] Java']JavaScript Access to DICOM Network and Objects in Web Browser
    Drnasin, Ivan
    Grgic, Mislav
    Gogic, Goran
    JOURNAL OF DIGITAL IMAGING, 2017, 30 (05) : 537 - 546
  • [50] Analysis of Java']JavaScript Web Applications Using SAFE 2.0
    Park, Jihyeok
    Ryou, Yeonhee
    Park, Joonyoung
    Ryu, Sukyoung
    PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 59 - 62