Back to Search
Start Over
RockJIT
- Source :
- ACM Conference on Computer and Communications Security
- Publication Year :
- 2014
- Publisher :
- ACM, 2014.
-
Abstract
- Managed languages such as JavaScript are popular. For performance, modern implementations of managed languages adopt Just-In-Time (JIT) compilation. The danger to a JIT compiler is that an attacker can often control the input program and use it to trigger a vulnerability in the JIT compiler to launch code injection or JIT spraying attacks. In this paper, we propose a general approach called RockJIT to securing JIT compilers through Control-Flow Integrity (CFI). RockJIT builds a fine-grained control-flow graph from the source code of the JIT compiler and dynamically updates the control-flow policy when new code is generated on the fly. Through evaluation on Google's V8 JavaScript engine, we demonstrate that RockJIT can enforce strong security on a JIT compiler, while incurring only modest performance overhead (14.6% on V8) and requiring a small amount of changes to V8's code. Key contributions of RockJIT are a general architecture for securing JIT compilers and a method for generating fine-grained control-flow graphs from C++ code.
- Subjects :
- Source code
Computer science
media_common.quotation_subject
JIT spraying
Overhead (engineering)
computer.software_genre
JavaScript
Just-in-time compilation
Compilation error
Operating system
Code injection
Compiler
Hardware_CONTROLSTRUCTURESANDMICROPROGRAMMING
Software_PROGRAMMINGLANGUAGES
computer
Implementation
media_common
Vulnerability (computing)
computer.programming_language
Subjects
Details
- Database :
- OpenAIRE
- Journal :
- Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security
- Accession number :
- edsair.doi...........3b383651c874563c72b9bde67463f7f1
- Full Text :
- https://doi.org/10.1145/2660267.2660281