Skip to main navigation Skip to search Skip to main content

JIT leaks: Inducing timing side channels through just-in-time compilation

    • University of California at Santa Barbara

    Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › peer-review

    25 Scopus citations

    Abstract

    Side-channel vulnerabilities in software are caused by an observable imbalance in resource usage across different program paths. We show that just-in-time (JIT) compilation, which is crucial to the runtime performance of modern interpreted languages, can introduce timing side channels in cases where the input distribution to the program is non-uniform. Such timing channels can enable an attacker to infer potentially sensitive information about predicates on the program input.We define three attack models under which such side channels are harnessable and five vulnerability templates to detect susceptible code fragments and predicates. We also propose profiling algorithms to generate the representative statistical information necessary for the attacker to perform accurate inference.We systematically evaluate the strength of these JIT-based side channels on the java.lang.String, java.lang.Math, and java.math.BigInteger classes from the Java standard library, and on the JavaScript built-in objects String, Math, and Array. We carry out our evaluation using two widely adopted, open-source, JIT-enhanced runtime engines for the Java and JavaScript languages: the Oracle HotSpot Java Virtual Machine and the Google V8 JavaScript engine, respectively.Finally, we demonstrate a few examples of JIT-based side channels in the Apache Shiro security framework and the GraphHopper route planning server, and show that they are observable over the public Internet.

    Original languageEnglish
    Title of host publicationProceedings - 2020 IEEE Symposium on Security and Privacy, SP 2020
    Pages1207-1222
    Number of pages16
    ISBN (Electronic)9781728134970
    DOIs
    StatePublished - May 2020
    Event41st IEEE Symposium on Security and Privacy, SP 2020 - San Francisco, United States
    Duration: 18 May 2020 → 21 May 2020

    Publication series

    NameProceedings - IEEE Symposium on Security and Privacy
    Volume2020-May
    ISSN (Print)1081-6011

    Conference

    Conference41st IEEE Symposium on Security and Privacy, SP 2020
    Country/TerritoryUnited States
    CitySan Francisco
    Period18/05/20 → 21/05/20

    Fingerprint

    Dive into the research topics of 'JIT leaks: Inducing timing side channels through just-in-time compilation'. Together they form a unique fingerprint.

    Cite this