Live data from Hacker News

How Intel Virtualisation Works

binarydebt.wordpress.com

1–10 of 32 posts

Re: How Intel Virtualisation Works

#2
I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool.

He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x.

Check it out at: https://dangless.gaborkozar.me/

I'm going to write an ascii diagram in the upcoming edit. For now: I'll just leave you with the legend that my friend made.

Note: my friend made a video and slides. So for people who are interested, his slides and videos are much nicer to look at than this diagram.

DIAGRAM (of all the physical and virtual memory)

|1||2||3||4|

LEGEND

1 = host physical memory

2 = host virtual memory

3 = guest physical memory

4 = guest virtual memory

A: normal host pagetable

B: embedded page table (this is VT-X thingy)

C: guest page table (this is what I mess with)

Re: How Intel Virtualisation Works

#5

I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool. He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x. Check it out at: https://dangless.gaborkozar.me/ I'm…

very interesting and creative use if EPT, will read the link. thanks for sharing

Re: How Intel Virtualisation Works

#6

I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool. He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x. Check it out at: https://dangless.gaborkozar.me/ I'm…

That is interesting, I am wondering how this differs in performance for existing page-based approaches used in debugging, such as Page Heap on Windows or Guard Malloc on Mac OS.

Re: How Intel Virtualisation Works

#7

I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool. He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x. Check it out at: https://dangless.gaborkozar.me/ I'm…

This is probably interesting enough for its own post.

Re: How Intel Virtualisation Works

#9

I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool. He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x. Check it out at: https://dangless.gaborkozar.me/ I'm…

I'm surprised that doesn't have a larger performance cost, since it's requiring a TLB entry for each memory allocation. I wonder if the benchmarks understate the cost due to being undersized for modern systems.

Re: How Intel Virtualisation Works

#10

I haven't read this article yet, but this is more or less the best moment to showcase you guys what a friend of mine made. I think it's really cool. He created a memory allocator in which it is impossible to create dangling pointers. He used it by becoming the kernel through Intel VT-x (i.e. he uses ring 0). He uses libdune for this, which in turn uses Intel VT-x. Check it out at: https://dangless.gaborkozar.me/ I'm…

From the slides it seems that there are still dangling pointers, but the addresses will not be reused for valid allocations? Thus mitigating security vulns from the dangling pointers.
Post reply on HN