Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Poor userspace isolation: CPU cache #8

Open
allanlw opened this issue Dec 13, 2016 · 2 comments
Open

Poor userspace isolation: CPU cache #8

allanlw opened this issue Dec 13, 2016 · 2 comments

Comments

@allanlw
Copy link
Collaborator

allanlw commented Dec 13, 2016

Not only does Silvos not well-isolate userspace processes from each other, it also does not well-isolate kernel space from userspace.

In particular, with Silvos it is possible for user space programs to gain vital information about other processes and even the kernel itself through cache side channel attacks.

Some possible approaches to solutions include:

  1. Let applications request that when they are unscheduled the cache is forcefully flushed.
  2. Let applications request periods of schedule in which they cannot be pre-empted.
  3. Let applications request specific pages that should never be put into cache (e.g. are uncachable in the page table and their page table entries are uncachable) for sensitive operations. We reference the Intel 64 Software Developer's Manual Volume 3A - Section 11.12 Page Attribute Table: http://www.intel.com/Assets/en_US/PDF/manual/253668.pdf
  4. Let applications request specific pages that are always cached. We reference the literature for a pre-existing approach: https://taesoo.gtisc.gatech.edu/pubs/2012/kim:stealthmem.pdf

Because none of these are available I do not feel comfortable doing my RSA computations inside a silvos userland.

@allanlw
Copy link
Collaborator Author

allanlw commented Dec 13, 2016

I think it's a bit passive aggressive (to say the least) to mark this as "wontfix" and leave no comment.

I do not agree that this is an "enhancement". It is a fundemental flaw in the userspace implementation of silvos.

@allanlw
Copy link
Collaborator Author

allanlw commented Apr 2, 2017

Here is a good new paper on this which suggests it is impossible: https://arxiv.org/abs/1612.04474

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants