Darwin, since Leopard's release, has sandboxing support built in to the kernel. Some background processes on Mac OS that run as root and access user files are sandboxed to be careful of buffer overflows and stuff, though seemingly they developed it most of all so they could sandbox the heck out of the iPhone OS's 3rd party apps, given the device runs a version of Leopard.

From what I read in the comic, Chrome isn't doing network sandboxing, just sandboxing filesystem access so nobody can hack the JS engine and use it's process to read /Users/_why/Music/GarageBand/brownnote- sample.aiff and find some terrible secret of yours, or start writing stuff in to C:\Windows\WIN.INI.

I always thought what _why was talking about with 'sandboxing' in shoes was to do with insulating shoes apps from each other, so $global_vars and the likes in one application don't exist in another app running at the same time. Now I'm getting a deep down fear reading _why's last message that perhaps his ideas are a bit more sinister and Adobe AIR like... Fair enough to sandbox the filesystem and network access if we're running a shoes app embedded in the browser or something, but if I download a .shy in to my computer, or a packaged .dmg, and run it, I want that program to be able to do everything any Cocoa app could do. Yes, shoes apps should be able to delete ~/Documents if they want to. I have yet to see a system where that type of sandboxing hasn't stood in the way of fun and innovation, and turned the whole platform in to boring kludge.

What is the intent with these sandboxy thoughts, _why?


On 04/09/2008, at 10:41 AM, William Morgan wrote:

Reformatted excerpts from _why's message of 2008-09-03:
I'm thinking something like a cross-platform Sandboxie (see:
sandboxie.com) which emulates a filesystem and socket environment for
each process.

Isn't that way harder than making MRI sandboxed? Look at what's out
there now. On FreeBSD you have jail. On Linux you have chroot (the "poor man's jail") and a couple virtualization options, of which OpenVZ seems
like the most active, but all of which require patching your kernel. I
don't think you have any options on Darwin. On Windows you have
Sandboxie and whatever Google's done for Chrome. Each of these is a very
different, very complicated thing...

I guess we can see what Google comes up with when they release Chrome
for Darwin and Linux. The latter seems significantly less likely to
happen anytime soon.
--
William <[EMAIL PROTECTED]>

Reply via email to