This artifact contains the implementation of JaVerT.Click, a symbolic analysis tool for modern event-driven Web applications. The tool extends JaVerT 2.0, a state-of-the-art symbolic execution tool for JavaScript (JS), with JS reference implementations of the DOM Core Level 1, DOM UI Events, JavaScript Promises and the JavaScript async/await APIs, all underpinned by a simple Core Event Semantics which is sufficiently expressive to describe the event models underlying these APIs. Our reference implementations mostly follow the respective standards line-by-line and are all thoroughly tested against the official test suite. We also evaluate JaVerT.Click by performing symbolic analysis on two real-world libraries: cash and p-map, finding three previously unknown bugs.
@Article{sampaio_et_al:DARTS.6.2.5, author = {Sampaio, Gabriela and Fragoso Santos, Jos\'{e} and Maksimovi\'{c}, Petar and Gardner, Philippa}, title = {{A Trusted Infrastructure for Symbolic Analysis of Event-Driven Web Applications (Artifact)}}, pages = {5:1--5:3}, journal = {Dagstuhl Artifacts Series}, ISSN = {2509-8195}, year = {2020}, volume = {6}, number = {2}, editor = {Sampaio, Gabriela and Fragoso Santos, Jos\'{e} and Maksimovi\'{c}, Petar and Gardner, Philippa}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/DARTS.6.2.5}, URN = {urn:nbn:de:0030-drops-132028}, doi = {10.4230/DARTS.6.2.5}, annote = {Keywords: Events, DOM, JavaScript, promises, symbolic execution, bug-finding} }
c835f96d72b5cfaee386637e517db944
(Get MD5 Sum)
Feedback for Dagstuhl Publishing