Re: Running Untrusted Code in a Restricted Process

From: Jeff Dike (jdike@karaya.com)
Date: Fri Jun 09 2000 - 21:53:09 EST


> I typically run virtual machines configured with 16 meg of "physical"
> memory,
> and, in that I can fit a decent machine with a lot of the services
> you'd
> expect on a Linux box, and I do kernel builds and run X (server and
> clients)
> with no trouble.

Sorry, but I had a braino when I wrote this. 16 meg was my standard memory
size for quite a while, but I bumped it up to 128 when I started doing things
like running X. 128 is way too much, but I've got no idea what the lower
limit for this kind of thing is.

> I can't wait to try this out. For example the plugin would need
> filesystem, networking, IPC, device drivers, in fact it doesn't need
> much of anything. I wonder how small I can make it can have it still
> run.

I'd like to know, too. This would be an interesting experiment.

> I hope it doesn't sound silly to say this

You're not the first to say it...

> but assuming just for a
> moment that I could compile this sucker on say, windows (maybe using
> cygwin32), and reimplement the part that does system calls in terms of
> windows system calls, could this be used to run sandboxed linux (elf)
> plugins on windows as well? *That* would be cool.

You could do that. Apparently, 95 doesn't have the capabilities needed, 98 is
iffy, and NT seems to be ok. If you're (or anyone else is) interested in
this, let me know, and I'll point you to the (scanty) information I have on
doing a Windows port.

> I guess you would need a way to trap system calls from the windows OS.
> I don't know if they provide that facility.

NT supposedly has the ability to do that, as well as the mmap stuff that's
needed.

                                Jeff

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jun 15 2000 - 21:00:20 EST