@article{MB4533328, title = "Protection on WebAssembly JIT-Compiled Code with Randomized Memory Protection Key", journal = "The Transactions of the Korea Information Processing Society", year = "2024", issn = "null", doi = "https://doi.org/10.3745/TKIPS.2024.13.11.597", author = "Shin Chae Won, Jeong Yun Seo, Bae Myeong Jin, Kwon Dong Hyun", keywords = "JIT Compiler, Wasm, Intel MPK, Memory Protection", abstract = "WebAssembly(Wasm) is a powerful platform that enables compiled code in various programming languages to be executed in web browser and in varied runtime environments. Specifically, for performance optimization, Wasm runtime provides Just-in-Time (JIT) compilation, but this poses a new security threat that violates the W^X policy in terms of memory security. In this study, we proposed a technique to improve the memory protection of JIT compiled code using Intel MPK and applied it to Wasm Micro Runtime (WAMR) to conduct experiments. We designed a code space protection algorithm that safely manages code space through diversification and randomization of protection keys and memory access control. As a result of benchmarking with CoreMark and PolyBench, the WAMR with memory protection showed performance improvement of about 1.59% in CoreMark and performance improvement of about 12% in PolyBench compared to the WAMR without memory protection." }