Protection on WebAssembly JIT-Compiled Code with Randomized Memory Protection Key 


Vol. 13,  No. 11, pp. 597-603, Nov.  2024
https://doi.org/10.3745/TKIPS.2024.13.11.597


PDF Full-Text
  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.

  Statistics


  Cite this article

[IEEE Style]

S. C. Won, J. Y. Seo, B. M. Jin, K. D. Hyun, "Protection on WebAssembly JIT-Compiled Code with Randomized Memory Protection Key," The Transactions of the Korea Information Processing Society, vol. 13, no. 11, pp. 597-603, 2024. DOI: https://doi.org/10.3745/TKIPS.2024.13.11.597.

[ACM Style]

Shin Chae Won, Jeong Yun Seo, Bae Myeong Jin, and Kwon Dong Hyun. 2024. Protection on WebAssembly JIT-Compiled Code with Randomized Memory Protection Key. The Transactions of the Korea Information Processing Society, 13, 11, (2024), 597-603. DOI: https://doi.org/10.3745/TKIPS.2024.13.11.597.