[HN Gopher] Vx32: Portable, efficient, safe user-space execution...
___________________________________________________________________
Vx32: Portable, efficient, safe user-space execution of untrusted
x86 code (2008)
Author : nateb2022
Score : 41 points
Date : 2023-07-18 18:59 UTC (4 hours ago)
(HTM) web link (pdos.csail.mit.edu)
(TXT) w3m dump (pdos.csail.mit.edu)
| karmakaze wrote:
| Ah. I can see how this might be useful for supporting a large
| library of plugins for various applications and industries.
|
| > Vx32 is similar in purpose to the Java or .NET virtual
| machines, but it runs native x86 code, so plug-ins can be written
| in ANY language, not just Java or C#.
| jgrahamc wrote:
| Paging majke who used this a lot at Cloudflare at one point.
| pizlonator wrote:
| The link to the paper in that page doesn't work but I found it
| here: https://pdos.csail.mit.edu/papers/vx32:usenix08.pdf
|
| Very cool technique, but I'm not enough of a DBT expert to judge
| how significant it is compared to the many many DBTs that folks
| have built before and since.
| Karliss wrote:
| I guess at this point same process native code sandboxing
| approaches like Vx32 and NaCl are more or less dead due to the
| various speculative execution attacks that came up in the recent
| few years.
| yjftsjthsd-h wrote:
| Super cool project; I think it's kind of sad that it didn't get
| picked up and become more popular. The Plan 9 port is
| particularly impressive, in my opinion:) (It would be interesting
| to compare that to User Mode Linux, come to think of it)
| [deleted]
| littlestymaar wrote:
| (2008)
| nneonneo wrote:
| Also see Unicorn (https://www.unicorn-engine.org/), a QEMU-based
| emulator-as-a-library that handles a wide range of processors
| (ARM, AArch64, x86, x64, PowerPC, MIPS, SPARC, ...) and comes
| with bindings for many popular languages (C, Python, Rust, Java,
| ...).
|
| Unicorn is used quite widely for reverse engineering and malware
| analysis; the Qiling project (https://qiling.io/) extends it to
| OS-level emulation.
| muricula wrote:
| Was this the predecessor to Google Native Client?
| https://en.wikipedia.org/wiki/Google_Native_Client
| Karliss wrote:
| There are some similarities to the 32 bit x86 NaCL and one of
| the early NaCl paper mentions this.
| https://storage.googleapis.com/pub-tools-public-publication-...
|
| They both use x86 memory segment functionality for limiting
| memory access, but seems like there are also plenty of things
| they do differently. And the x86_64 and ARM versions of NaCl
| are even more different, they can't use the segment registers
| so they use masking instead.
| redog wrote:
| Doesn't look like it:
| https://www.chromium.org/nativeclient/reference/external-res...
___________________________________________________________________
(page generated 2023-07-18 23:00 UTC)