设置图像的src属性时是否需要注意,其中src路径由用户指定?

Rak*_*yal 1 html javascript security xss sanitization

我正在创建一个页面,其中用户将指定图像的URL.此URL将存储在DB中,然后将返回以显示图像.到目前为止,如果用户不想恶作剧,那就好了.

但现在通过http://ha.ckers.org/xss.html,用户还可以指定一个实际上是脚本的URL.

<IMG SRC=javascript:alert('XSS')> 
Run Code Online (Sandbox Code Playgroud)

我在一个页面中试过这个,但这并没有造成任何伤害.[没有显示警报]重点是,我真的需要关心用户指定的内容吗?如果是,那么我需要考虑的案例/场景是什么,以及如何做到这一点?

tsh*_*hao 5

只要你从不受信任的来源获得任何东西,你就需要照顾它.在这种情况下,用户可以编写一些有害的代码来破解你的HTML.

<img alt='' src='' />alert('xss');<!--'-->
Run Code Online (Sandbox Code Playgroud)

当在不同的地方使用时,用户输入也应以不同的方式处理.例如Url编码,Html编码,Javascript编码.

总之,不要相信用户输入!