• Home
  • Search
  • Scalable and Precise Static Analysis of JavaScript Applications via Loop-Sensitivity
  • Cite Icon44
  • https://doi.org/10.4230/lipics.ecoop.2015.735Copy DOI Icon

Scalable and Precise Static Analysis of JavaScript Applications via Loop-Sensitivity

Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

The numbers and sizes of JavaScript applications are ever growing but static analysis techniques for analyzing large-scale JavaScript applications are not yet ready in a scalable and precise manner. Even when building complex software like compilers and operating systems in JavaScript, developers do not get much benefits from existing static analyzers, which suffer from mutually intermingled problems of scalability and imprecision. In this paper, we present Loop-Sensitive Analysis (LSA) that improves the analysis scalability by enhancing the analysis precision in loops. LSA distinguishes loop iterations as many as needed by automatically choosing loop unrolling numbers during analysis. We formalize LSA in the abstract interpretation framework and prove its soundness and precision theorems using Coq. We evaluate our implementation of LSA using the analysis results of main web pages in the 5 most popular websites and those of the programs that use top 5 JavaScript libraries, and show that it outperforms the state-of-the-art JavaScript static analyzers in terms of analysis scalability. Our mechanization and implementation of LSA are both publicly available.

Similar Papers
  • Book Chapter
  • Citations39

Small Formulas for Large Programs: On-Line Constraint Simplification in Scalable Static Analysis

  • Jan 01, 2010
  • Isil Dillig +2
  • PDF
  • Research Article
  • Citations67

Malware Classification Using Probability Scoring and Machine Learning

  • Jan 01, 2019
  • IEEE Access
  • Di Xue +4
  • Dissertation

Data flow and heap analysis with application to privilege escalation vulnerability scanning and software theft detection

  • Jan 01, 2013
  • Ping-Fai Chan
  • Conference Article
  • Citations106

Remedying the eval that men do

  • Jul 15, 2012
  • Simon Holm Jensen +2
  • Book Chapter

Runtime Analysis and Instrumentation for Securing Software

  • Jan 01, 2010
  • R Sekar
  • PDF
  • Research Article
  • Citations9

Static Analysis for Improved Modularity of Procedural Web Application Programming Interfaces

  • Jan 01, 2020
  • IEEE Access
  • Alistair Barros +2
  • Conference Article
  • Citations20

Type refinement for static analysis of JavaScript

  • Oct 28, 2013
  • Vineeth Kashyap +4
  • Research Article
  • Citations12

Some trade-offs in reducing the overhead of assertion run-time checks via static analysis

  • Dec 28, 2017
  • Science of Computer Programming
  • Nataliia Stulova +2
  • Video Transcripts

Static analysis for Ada, C/C++ and Python: different languages, different needs.

  • Jun 09, 2021
  • Underline Science Inc.
  • Maurizio Martignano
  • Video Transcripts

Static analysis for Ada, C/C++ and Python: different languages, different needs.

  • May 26, 2021
  • Underline Science Inc.
  • Maurizio Martignano
  • Conference Article
  • Citations7

Static analysis for voltage stability of the Northern Jordanian power system

  • Mar 01, 2018
  • Mohammad Hammad +1
  • Conference Article
  • Citations5

Improving implicit parallelism

  • Aug 30, 2015
  • José Manuel Calderón Trilla +1
  • Conference Article
  • Citations5

Generating Tests to Analyse Dynamically-Typed Programs

  • Nov 01, 2019
  • Stephan Lukasczyk
  • Conference Article
  • Citations2

Towards Patching Memory Leak Bugs in Off-The-Shelf Software

  • Nov 01, 2014
  • Domenico Cotroneo +1
  • Conference Article
  • Citations77

Integrating Static and Dynamic Analysis for Detecting Vulnerabilities

  • Jan 01, 2006
  • Ashish Aggarwal +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.