Modular Call Graph Construction for Security Scanning of Node.js Applications
Sat 17 Jul 2021 08:40 - 09:00 at ISSTA 1 - Session 25 (time band 3) Testing and Analysis Chair(s): Michael Pradel
Most of the code in typical Node.js applications comes from third-party libraries that consist of a large number of interdependent modules. Because of the dynamic features of JavaScript, it is difficult to obtain detailed information about the module dependencies, which is vital for reasoning about the potential consequences of security vulnerabilities in libraries, and for many other software development tasks. The underlying challenge is how to construct precise call graphs that capture the connectivity between functions in the modules.
In this work we present a novel approach to call graph construction for Node.js applications that is modular, taking into account the modular structure of Node.js applications, and sufficiently accurate and efficient to be practically useful. We demonstrate experimentally that the constructed call graphs are useful for security scanning, reducing the number of false positives by 81% compared to \textsl{npm audit} and with zero false negatives. Compared to \textsl{js-callgraph}, the call graph construction is significantly more accurate and efficient. The experiments also show that the analysis time is reduced substantially when reusing modular call graphs.
Wed 14 JulDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
18:30 - 19:30 | Session 1 (time band 1) Web ApplicationsTechnical Papers at ISSTA 1 Chair(s): Xusheng Xiao Case Western Reserve University | ||
18:30 20mTalk | Identifying Privacy Weaknesses from Multi-party Trigger-Action Integration Platforms Technical Papers Kulani Tharaka Mahadewa National University of Singapore, Yanjun Zhang University of Queensland, Guangdong Bai University of Queensland, Lei Bu Nanjing University, Zhiqiang Zuo Nanjing University, Dileepa Fernando Sri Lanka Technological Campus, Zhenkai Liang National University of Singapore, Jin Song Dong National University of Singapore DOI Media Attached File Attached | ||
18:50 20mTalk | WebEvo: Taming Web Application Evolution via Detecting Semantic Structure Changes Technical Papers Fei Shao Case Western Reserve University, Rui Xu Case Western Reserve University, Wasif Haque University of Texas at Dallas, Jingwei Xu Peking University, Ying Zhang Peking University, Wei Yang University of Texas at Dallas, Yanfang Ye Case Western Reserve University, Xusheng Xiao Case Western Reserve University DOI File Attached | ||
19:10 20mTalk | Modular Call Graph Construction for Security Scanning of Node.js Applications Technical Papers Benjamin Barslev Nielsen Aarhus University, Martin Toldam Torp Aarhus University, Anders Møller Aarhus University DOI Media Attached |
Sat 17 JulDisplayed time zone: Brussels, Copenhagen, Madrid, Paris change
08:00 - 09:20 | Session 25 (time band 3) Testing and AnalysisTechnical Papers at ISSTA 1 Chair(s): Michael Pradel University of Stuttgart | ||
08:00 20mTalk | Automated Patch Backporting in Linux (Experience Paper)Distinguished Artifact Technical Papers Ridwan Salihin Shariffdeen National University of Singapore, Xiang Gao National University of Singapore, Gregory J. Duck National University of Singapore, Shin Hwei Tan Southern University of Science and Technology, Julia Lawall Inria, Abhik Roychoudhury National University of Singapore DOI Pre-print Media Attached | ||
08:20 20mTalk | Identifying Privacy Weaknesses from Multi-party Trigger-Action Integration Platforms Technical Papers Kulani Tharaka Mahadewa National University of Singapore, Yanjun Zhang University of Queensland, Guangdong Bai University of Queensland, Lei Bu Nanjing University, Zhiqiang Zuo Nanjing University, Dileepa Fernando Sri Lanka Technological Campus, Zhenkai Liang National University of Singapore, Jin Song Dong National University of Singapore DOI Media Attached File Attached | ||
08:40 20mTalk | Modular Call Graph Construction for Security Scanning of Node.js Applications Technical Papers Benjamin Barslev Nielsen Aarhus University, Martin Toldam Torp Aarhus University, Anders Møller Aarhus University DOI Media Attached | ||
09:00 20mTalk | Semantic Matching of GUI Events for Test Reuse: Are We There Yet? Technical Papers Leonardo Mariani University of Milano-Bicocca, Ali Mohebbi USI Lugano, Mauro Pezze USI Lugano; Schaffhausen Institute of Technology, Valerio Terragni University of Auckland DOI Pre-print |