Analysis of JavaScript programs: Challenges and research trends

K Sun, S Ryu - ACM Computing Surveys (CSUR), 2017 - dl.acm.org
JavaScript has been a de facto standard language for client-side web programs, and now it
is expanding its territory to general purpose programs. In this article, we classify the client …

Modular call graph construction for security scanning of Node. js applications

BB Nielsen, MT Torp, A Møller - Proceedings of the 30th ACM SIGSOFT …, 2021 - dl.acm.org
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 …

Pycg: Practical call graph generation in python

V Salis, T Sotiropoulos, P Louridas… - 2021 IEEE/ACM …, 2021 - ieeexplore.ieee.org
Call graphs play an important role in different contexts, such as profiling and vulnerability
propagation analysis. Generating call graphs in an efficient manner can be a challenging …

KJS: A complete formal semantics of JavaScript

D Park, A Stefănescu, G Roşu - Proceedings of the 36th ACM SIGPLAN …, 2015 - dl.acm.org
This paper presents KJS, the most complete and throughly tested formal semantics of
JavaScript to date. Being executable, KJS has been tested against the ECMAScript 5.1 …

JSAI: A static analysis platform for JavaScript

V Kashyap, K Dewey, EA Kuefner, J Wagner… - Proceedings of the …, 2014 - dl.acm.org
JavaScript is used everywhere from the browser to the server, including desktops and
mobile devices. However, the current state of the art in JavaScript static analysis lags far …

Mining node. js vulnerabilities via object dependence graph and query

S Li, M Kang, J Hou, Y Cao - 31st USENIX Security Symposium …, 2022 - usenix.org
Node. js is a popular non-browser JavaScript platform that provides useful but sometimes
also vulnerable packages. On one hand, prior works have proposed many program analysis …

A trusted mechanised JavaScript specification

M Bodin, A Charguéraud, D Filaretti… - Proceedings of the 41st …, 2014 - dl.acm.org
JavaScript is the most widely used web language for client-side applications. Whilst the
development of JavaScript was initially just led by implementation, there is now increasing …

Scaling javascript abstract interpretation to detect and exploit node. js taint-style vulnerability

M Kang, Y Xu, S Li, R Gjomemo, J Hou… - … IEEE Symposium on …, 2023 - ieeexplore.ieee.org
Taint-style vulnerabilities, such as OS command injection and path traversal, are common
and severe software weaknesses. There exists an inherent trade-off between analysis …

HybriDroid: static analysis framework for Android hybrid applications

S Lee, J Dolby, S Ryu - Proceedings of the 31st IEEE/ACM international …, 2016 - dl.acm.org
Mobile applications (apps) have long invaded the realm of desktop apps, and hybrid apps
become a promising solution for supporting multiple mobile platforms. Providing both …

The adoption of javascript linters in practice: A case study on eslint

KF Tómasdóttir, M Aniche… - IEEE Transactions on …, 2018 - ieeexplore.ieee.org
A linter is a static analysis tool that warns software developers about possible code errors or
violations to coding standards. By using such a tool, errors can be surfaced early in the …