There are issues on the LJ issue tracker board concerning this.
I've just
filed my own bug against Firefox. (LJ *need* to fix their end, but there are things the browser can do to prevent this too, that are low-impact. Hopefully Mozilla/Firefox will implement a block for the next version. Good luck waiting for Microsoft to fix Internet Explorer
(
Read more... )
Instead, I think the correct fix is not to present cookies in cross-site POST requests - or at least, to ask the user before doing so.
Reply
Reply
I've always been given to understand that GET requests are not supposed to change anything, only request things. If servers enforce that, then this will work. If they don't, it doesn't...
Reply
That said, real-world usage differs; consider: www.somewhere.com/getwebcounterimg.php?page=214&action=increment as a first example.
Reply
GETs SHOULD be idempotent. They MAY not be, but if you're making significant changes (and I don't count webcounters as that significant) to database state you SHOULD use POSTs instead.
Reply
Fundamentally, this exploit needs to be fixed by LJ itself. And it also needs to be fixed by any other website which has this vulnerability. That's the only way *they* can assure users they are safe.
However my suggestion (which you will notice is additional to the LJ fix) would prevent this attack, at least in this instance. (And given that LJ doesn't allow JS in HTML posts should completely prevent it.) The infrastructure already exists to support it, there is no justification AFAICS for allowing this case, and it is actually a very good point: certain protocol transactions are expected from certain user actions. All others ought to at least require confirmation if not be disabled completely.
Reply
Certainly I think making XS POST of cookies a promptable option would be a good idea (even if I think it would be disabled by too many users to be useful), however I think this situation suggests a number of different approaches that ought to be implemented in parallel.
Reply
Leave a comment