ERIM: Secure, Efficient In-process Isolation with Memory Protection Keys (MPK)

AI-generated keywords: ERIM Secure In-process Isolation Memory Protection Keys (MPK) Efficient

AI-generated Key Points

The license of the paper does not allow us to build upon its content and the key points are generated using the paper metadata rather than the full article.

  • Importance of isolating sensitive state and data to enhance security and robustness of applications
  • Examples of safeguarding cryptographic keys and protecting language runtimes from risky native libraries
  • Conventional page-based hardware isolation vs. frequent domain switching scenarios
  • Introduction of ERIM as a novel technique leveraging hardware-enforced isolation with minimal overhead on x86 CPUs
  • Combination of protection keys (MPKs) and binary inspection to prevent circumvention attempts
  • Overhead of ERIM is less than 1% for 100,000 switches per second
  • Seamless application to new and existing applications without requiring compiler modifications
  • Compatibility with standard Linux kernel and low runtime overhead under high domain switching rates
Also access our AI generated: Comprehensive summary, Lay summary, Blog-like article; or ask questions about this paper to our AI assistant.

Authors: Anjo Vahldiek-Oberwagner, Eslam Elnikety, Nuno O. Duarte, Michael Sammler, Peter Druschel, Deepak Garg

USENIX Security Symposium 2019

Abstract: Isolating sensitive state and data can increase the security and robustness of many applications. Examples include protecting cryptographic keys against exploits like OpenSSL's Heartbleed bug or protecting a language runtime from native libraries written in unsafe languages. When runtime references across isolation boundaries occur relatively infrequently, then conventional page-based hardware isolation can be used, because the cost of kernel- or hypervisor-mediated domain switching is tolerable. However, some applications, such as the isolation of cryptographic session keys in network-facing services, require very frequent domain switching. In such applications, the overhead of kernel- or hypervisor-mediated domain switching is prohibitive. In this paper, we present ERIM, a novel technique that provides hardware-enforced isolation with low overhead on x86 CPUs, even at high switching rates (ERIM's measured overhead is less than 1% for 100,000 switches per second). The key idea is to combine protection keys (MPKs), a feature recently added to x86 that allows protection domain switches in userspace, with binary inspection to prevent circumvention. We show that ERIM can be applied with little effort to new and existing applications, doesn't require compiler changes, can run on a stock Linux kernel, and has low runtime overhead even at high domain switching rates.

Submitted to arXiv on 21 Jan. 2018

Ask questions about this paper to our AI assistant

You can also chat with multiple papers at once here.

The license of the paper does not allow us to build upon its content and the AI assistant only knows about the paper metadata rather than the full article.

AI assistant instructions?

Results of the summarizing process for the arXiv paper: 1801.06822v5

This paper's license doesn't allow us to build upon its content and the summarizing process is here made with the paper's metadata rather than the article.

In their paper titled "ERIM: Secure, Efficient In-process Isolation with Memory Protection Keys (MPK)," authors Anjo Vahldiek-Oberwagner, Eslam Elnikety, Nuno O. Duarte, Michael Sammler, Peter Druschel, and Deepak Garg discuss the importance of isolating sensitive state and data to enhance the security and robustness of various applications. They highlight examples such as safeguarding cryptographic keys against vulnerabilities like OpenSSL's Heartbleed bug and protecting language runtimes from potentially risky native libraries. The authors emphasize that while conventional page-based hardware isolation suffices for applications where runtime references across isolation boundaries are infrequent, certain scenarios necessitate frequent domain switching. For instance, in network-facing services requiring the isolation of cryptographic session keys, the overhead of kernel- or hypervisor-mediated domain switching becomes prohibitive. To address this challenge, the authors introduce ERIM as a novel technique that leverages hardware-enforced isolation with minimal overhead on x86 CPUs even at high switching rates. By combining protection keys (MPKs) – a recent addition to x86 architecture enabling protection domain switches in userspace – with binary inspection to prevent circumvention attempts, ERIM offers an efficient solution. The measured overhead of ERIM is less than 1% for 100,000 switches per second. Furthermore, the authors demonstrate that ERIM can be seamlessly applied to both new and existing applications without requiring compiler modifications. It is compatible with a standard Linux kernel and exhibits low runtime overhead even under high domain switching rates. This innovative approach presents a promising avenue for enhancing application security through effective in-process isolation mechanisms.
Created on 04 Jul. 2024

Assess the quality of the AI-generated content by voting

Score: 0

Why do we need votes?

Votes are used to determine whether we need to re-run our summarizing tools. If the count reaches -10, our tools can be restarted.

The previous summary was created more than a year ago and can be re-run (if necessary) by clicking on the Run button below.

The license of this specific paper does not allow us to build upon its content and the summarizing tools will be run using the paper metadata rather than the full article. However, it still does a good job, and you can also try our tools on papers with more open licenses.

Similar papers summarized with our AI tools

Navigate through even more similar papers through a

tree representation

Look for similar papers (in beta version)

By clicking on the button above, our algorithm will scan all papers in our database to find the closest based on the contents of the full papers and not just on metadata. Please note that it only works for papers that we have generated summaries for and you can rerun it from time to time to get a more accurate result while our database grows.

Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.