Security concerns
why the lucky stiff
why at hobix.com
Mon Sep 5 02:31:33 EDT 2005
I'm really concerned about MouseHole's security. To a degree, user
scripts are inherently granted permissions and open the user to attack
(just as a downloaded executable can do any damage it pleases.)
Anyway, here are the security concerns that need to be addressed:
* Installed user scripts: are they allowed to do anything at all once
the user has authorized installation? Or should they be forced to state
their intentions? "Hi, I require at least $SAFE = 2!"
* Uninstalled user scripts which are loaded for metadata scanning: are
allowed to do nothing at all!
* Javascript access to MouseHole: A MouseHole script injects Javascript
into a page and that Javascript needs to store data back inside
MouseHole. Uhh, this exposes MouseHole to possible attack from other
Javascripts. What APIs do we allow Javascript to access. (You don't
want a rogue Javascript deactivating all your scripts or wiping out your
configurations, right?)
* Javascript cross-site access: A MouseHole script injects Javascript
into a page and that Javascript needs to pass data to another domain
(normally a JS failure.)
** So, if we're on boingboing and we want to access metafilter..
http://boingboing.net/http://metafilter.com/api/post. That opens a
security hole (the same one Greasemonkey just bumped up on.)
** Instead, we could have the MouseHole script register URLs before
hand: register_url("http://metafilter.com/api/post")
** Then, the script is given a hash to access that domain. (Or is
allowed access to it through
http://boingboing.net/http://metafilter.com/api/post.)
** Or, just a whitelist with regexps.
I'm sure there are other security issues. We'll start with these, though.
_why
More information about the Mousehole-scripters
mailing list