On 8/21/10 3:39 PM, J David Eisenberg wrote:
Is it possible to extend the spec to allow a script to read any file that
can been loaded as part of the HTML page, such as an<img/>?

That would be a security hole, sorry.

I understand there are good security reasons for restricting file
reads; you don't want someone else's web page to be able to go
willy-nilly through your local hard disk and send all the information
back to the Bad Guys. But this scenario is different; if you have
loaded an<img/>, you must already have read permission for it

No.  The _user_ has read permissions for it.  Your site may well not.

I'm just asking to be able to access its bits.

Right; that's what you can't have.

Note that if you _are_ allowed to have the image bits, you can just use XMLHttpRequest to get them, right?

Precedent: think of<link rel="stylesheet" href="blah.css"/>; you have
access to all the elements in that file via the DOM, and there's no
security issue involved, even if it's a cross-domain href.

All the browsers I know that implement the CSSOM block cross-domain CSSOM access. A few now go further and block certain cross-domain CSS loads period.

That's because it is *not* an arbitrary file on the user's local file system;
it's one that the author has explicitly specified and is allowed to
read.

You seem to be assuming that the author who put in the <link> is the same entity who put up the CSS file. This is precisely the assumption that fails in the cross-domain case.

I think my suggestion here meets the same criteria. Am I missing
something obvious on the security front?

Yes. Reading information cross-domain without explicit opt-in by the domain being read from is a no-no, generally.

-Boris

Reply via email to