On Wed, 14 Dec 2005 08:37:16 -0800, Bob Smith <[EMAIL PROTECTED]> wrote:

>thanks for the explanation.
>
>so it would be less work to try to chroot a browser then to make a
>virtual machine? perhaps its even a better way of isolating?
>
>i googled around a bit and found some threads about people trying to
>chroot their browsers, but i couldnt find any successful story. is it
>practically doable?
>

When you think about all the crap a graphical browser needs just to run
(fonts, mime types, library dependencies, plugins, cache, user
preferences, ...), it will probably be a major pain to chroot the beast
because you'll be duplicating tons of stuff into your chroot. At that
point, you have only gained a copy of your file system rather than any
real security.

Worse yet many "browsers" are actually dual purpose and function as the
system file manager within the windowing environment (windows/MSIE,
KDE/konqueror, gnome/?, and so on...). If you actually manage to
successfully chroot all your browsers to prevent accidentally clicking
on a "bad" link, you suddenly don't have a file manager and have lost a
lot of usability.

>looking at other troublesome programs; they come chooted by default on
>openbsd. is there any effort being made by others than vmware to
>isolate browsers?
>
>seems to me like it would be a step in the right direction?

Programs are not chrooted/isolated because they are "troublesome" (i.e.
have bugs), instead they are chrooted/isolated because they pose
significant risks. Since a program like the Apache webserver is always
exposed to threats from the outside world, it poses a greater risk than
a simple utility program like copy or move that require access to the
system.

In the crap-happy world of the web and W3C standards, refusing to
support crap-de-joure like Java, JavaScript, plugins, cookies and all
the rest of the garbage only means that the overwhelming majority of
crappy websites will break. Since the overwhelming majority of all web
sites are crap spewed by idiots, you can guess where this leaves you.

You also need to think about all the file writing that goes on when you
browse the web. You've got your cache, cookies, user preferences,
javascript files, downloaded plugins and lots of stuff that can be
tainted and can be used against you. The Google claim of "Do No Evil" is
really bullshit when you realize they are tracking you via every page
that loads their AdWords/AdSense stuff and trying to shove targeted adds
down your throat. But turning off cookies breaks a lot of well
intentioned and useful sites including stuff in the FOSS world like:
http://archive.netbsd.se 
http://sourceforge.net
and countless others.

A virtual machine by itself is probably not enough because the required
local READ/WRITE on files makes for real mess that will only get worse
over time. Though the rather smart folks at VMware have thought of this
issue (the image can be configured to reset itself after each use), I'm
not sure exactly how well it is implemented... -and no one will know
without doing a lot of disassembly and reverse engineering.

To prevent the READ/WRITE issue with chrooting, you'll need to figure
out not only how to chroot the damn browser and everything it needs but
you'll also need to figure out how to do the chroot in some kind of a
self creating/loading RAM disk to keep a consistent starting state.

To put it bluntly, you are looking at a ton of work regardless of the
route you decide to take and this list is probably the worst place to
discuss work that will never be done.

Kind Regards,
JCR

Reply via email to