On Wed, 2010-10-20 at 08:22 +0900, Johan Euphrosine wrote: 
> Thought it might be of some interest, as said in its description it
> adds asteroids to any site on the web:
> http://erkie.github.com/
> 
> Code (BSD):
> http://github.com/erkie/erkie.github.com

Thanks Proppy! This technique of script injection seems very effective -
I've noticed it there too: http://markup.io/ (it's not free software
though).

I'd like to use this technique, but I'm not sure how to use it for
HackIt - maybe you or Vlad will have an idea. Using this is perfect when
you want to inject code in a given page, but I'm not sure how to
construct a navigation workflow using this (ie, applying the code
injection on the next page when the player clicks on a link) - aside
from asking the player to click on the bookmark on every page he is
visiting.

I know there is a good reason for that, avoiding XSS attacks (and I'm
actually already surprised it works with a bookmark, as it makes a
social engineering attack quite easy if users get used to perform this
kind of manipulation).

Maybe the other way round - not sure about this, let me know what you
think. What if we never actually change the page - but instead clear and
replace the DOM inside the page, except for our script? Do you think it
could work?

When the player clicks on a link, it would go like this:

     1. Page change is blocked (hash change detection?)
     2. The new URL is identified (is there a consistent way to do that,
        aside from trying to get it from the href of the link that was
        clicked? What about redirects from javascript calls?)
     3. Content of the new page is retrieved and the DOM is replaced by
        the one from the new page

Even if it could work, this also has security implications... But I'm
curious to get your point of view here.

Xavier.

_______________________________________________
Farsides mailing list - [email protected]

Wiki:  http://farsides.com/
List:  http://farsides.com/ml/
Forum: http://farsides.com/forum/
Ideas: http://farsides.com/ideas/
Chat:  http://farsides.com/chat/

Reply via email to