Article Dans Une Revue ACM Computing Surveys Année : 2025

War on JITs: Software-Based Attacks and Hybrid Defenses for JIT Compilers - A Comprehensive Survey

Résumé

Programming Language Virtual Machines (VMs) are composed of several components that together execute and manage languages efficiently. They are deployed in virtually all computing systems through modern web browsers. However, vulnerabilities in any VM component pose a significant threat to security and privacy. In this paper, we present a survey of software attacks on Just-In-Time (JIT) compilers, which dynamically produce optimized code at run time. We first present an overview and categorization of software attacks and their vectors as presented in the literature, identifying three main attack classes: code injection, code-reuse and data-only attacks. We show how each can lead to arbitrary code execution. Next, we present a comprehensive taxonomy of defenses, including diversification, strict memory permissions and capability containment. While some were integrated in modern VMs, we draw recommendations for future protections. Securing JIT compilers remains challenging due to inherent conflicts with security principles, such as WX ( W ritable XOR e X ecutable), and the complexity of JIT optimizations. Finally, we examine how newer architectures, like ARMv8 and RISC-V, face similar threats. With RISC-V’s open architecture offering a promising platform for prototyping VM-specific protections and custom security instructions, we discuss hardware-assisted runtime protections and RISC-V extensions that could enhance VM security.

Fichier principal
Vignette du fichier
3731598.pdf (1.5 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Licence

Dates et versions

hal-05041484 , version 1 (21-04-2025)

Licence

Identifiants

Citer

Quentin Ducasse, Pascal Cotret, Loïc Lagadec. War on JITs: Software-Based Attacks and Hybrid Defenses for JIT Compilers - A Comprehensive Survey. ACM Computing Surveys, 2025, 57 (9), pp.1-36. ⟨10.1145/3731598⟩. ⟨hal-05041484⟩
337 Consultations
972 Téléchargements

Altmetric

Partager

  • More