Richard Bucker

Sandboxing OSX apps is a good start

Posted at — Jun 23, 2012

The idea of sandboxing OSX apps is not new or unique. Both OSX and Windows have features that prevent software, particularly 3rd party apps, from accessing various physical and data resources but it’s not without it’s detractors most of which are just haters. What bothers me is that many in this verbal minority have an agenda whether it’s selling more anti-virus services or their one of those users that does not care.The reality is, however, system or computer security whether it’s in the form of in-built firewalls, Little Snitch, or sandboxing has more to do with protecting the brand rather than user’s data. One other side effect is going to be the cost of support.(1) the first thing you’ll notice whether you’re installing software using the appstore or downloading directly from the vendor’s website is that the app is being installed as a “shared” app which means that the user needed to be the administrator or have administrator access. And since the installer is built into the application which has been promoted to administrator could install much more than just the application. (think trojan horse)(2) disk space is relatively cheap these days even though SSD is becoming more prevalent (and is more expensive than the mechanical alternative) prices are falling and it’s still pretty efficient. So having multiple copies per user is not terrible.(3) Sandboxing means that the user would install the app in their user folder(s) and that the app would only have access to it’s own data. On the whole this is a good idea, specially if you’re talking about something like quickbooks where the application’s data could be encrypted either by the sandbox or the application.(4) At some point, however, applications will need the ability to bridge sandboxes. It seems to me that bridging is a permissions thing that the kernel is ideally suited for.What does all of this really mean for the user experience? On the one hand I believe that it’s going to eliminate the biggest problem for most computer users; and that is the dreaded “you need to reinstall the operating system and all of your applications”.On the one hand sandboxing is meant to protect the operating system from the user applications. On the other hand it’s also meant to prevent one application from accessing other applications for either innocent or nefarious reasons.