在几乎每一个XSS缓解导游,我已经看到了,下面的模式中提到:为什么在<img>标签的src属性中允许javascript:URI?
<img src="javascript:evil();">
可这可能有什么合法使用?你可以使用JS代码来生成一个base64编码表示或什么?
在几乎每一个XSS缓解导游,我已经看到了,下面的模式中提到:为什么在<img>标签的src属性中允许javascript:URI?
<img src="javascript:evil();">
可这可能有什么合法使用?你可以使用JS代码来生成一个base64编码表示或什么?
它没有很多合法用途。
它的工作方式可能是因为您可以使用任何协议,并且一些浏览器实现了可以从多个地方调用的伪协议javascript
。
尽管现代浏览器不支持''元素的'javascript:'协议 - 试试这个:http://jsfiddle.net/LXwM9/ –
@RichardJPLeGuen Firefox禁用了它的地址栏。看起来,一些浏览器仍然必须允许src'属性。 – alex
我只是不会称这些为现代浏览器:P –
我不知道合法使用,但有些浏览器(通常是较旧的)会执行JavaScript。 See the OWASP XSS Filter Evasion Cheat Sheet。
我想链接到'ha.ckers.org' XSS备忘单,但它看起来像现在重定向到OWASP列表。太糟糕了;我似乎记得它更深入。 –
它似乎从[这](http://stackoverflow.com/questions/116967/img-src-tags-and-javascript)我的建议是不允许的。 – wwaawaw