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 conformance test suite, and passes all 2,782 core language tests. Among the existing implementations of JavaScript, only Chrome’s passes all the tests, and no other semantics passes more than 90%. In addition to a reference implementation for JavaScript, KJS also yields a simple coverage metric for a test suite: the set of semantic rules it exercises. Our semantics revealed that the ECMAScript 5 conformance test suite fails to cover several semantic rules. Guided by the semantics, we wrote tests to exercise those rules. The new tests revealed bugs both in production JavaScript engines (Chrome, Safari, Firefox) and in other semantics. KJS is symbolically executable, thus it can be used for formal analysis and verification of JavaScript programs. We verified non-trivial programs and found known security vulnerabilities.
Tue 16 JunDisplayed time zone: Tijuana, Baja California change
14:00 - 15:40 | |||
14:00 25mTalk | A Formal C Memory Model Supporting Integer-Pointer Casts Research Papers Jeehoon Kang Seoul National University, Chung-Kil Hur Seoul National University, William Mansky University of Pennsylvania, Dmitri Garbuzov University of Pennsylvania, Steve Zdancewic , Viktor Vafeiadis MPI-SWS, Germany Media Attached | ||
14:25 25mTalk | Defining the undefinedness of C Research Papers Chris Hathhorn University of Missouri, Chucky Ellison University of Illinois, Grigore Roşu University of Illinois at Urbana-Champaign Media Attached | ||
14:50 25mTalk | KJS: A Complete Formal Semantics of JavaScript Research Papers Daejun Park University of Illinois at Urbana-Champaign, Andrei Stefanescu University of Illinois at Urbana-Champaign, Grigore Roşu University of Illinois at Urbana-Champaign Media Attached | ||
15:15 25mTalk | Verdi: A Framework for Formally Verifying Distributed System Implementations Research Papers James R. Wilcox University of Washington, Doug Woos University of Washington, Pavel Panchekha University of Washington, Zachary Tatlock University of Washington, Seattle, Xi Wang University of Washington, Michael D. Ernst University of Washington, Thomas Anderson University of Washington Media Attached |