html笔记

帅的相对论 2013-01-05

1)html注入

     html注入问题一直是容易被人忽视的问题,例如有个文本框,用户在文本框中输入:<p>Sanitizing <img src=""INVALID-IMAGE" onerror='location.href="http://www.sina.com.cn/"'>!</p>的话,提交后保存在数据库,当在读取该值显示在页面上时,读到该代码会当成一般的html代码所处理,onerror表示当图片不存在时会触发,这里的结果就是跳转到新浪的页面了。解决该问题的方法时把文本框的值在后台进行html过滤,把类似"<"这种标签变成“&lt;”,保存在数据库中的就是经过转码的,然后当查看输出页面的源代码,发现"<"已经替换成了"&lt;",所以js无法执行,但在页面显示时,我们确能看到“原汁原味”的js内容。

2)  form 的 target 如果是一个iframe的话,那么这个iframe的name必须是存在的,否则在IE下会单独弹出一个标签页面。 

相关推荐