col*_*arc 1 javascript security filter
如果我要创建一个用户可以将任意html放入其"个人资料"或类似内容的网站,我该如何阻止该html中嵌入的JavaScript运行?
我可以在for(;;);某处放置无限循环吗?如果是这样,我会把它放在哪里?
此方法还有哪些其他安全问题?
Mat*_*chu 10
嗯,无限循环只会挂起浏览器.
对于PHP,我建议使用HTML Purifier来保持邪恶的HTML,只是让好东西:)
Python HTML Sanitizer似乎也是Python的一个很好的选择,尽管我没有机会尝试它.这个StackOverflow问题使用BeautifulSoup提供了一些简单的HTML清理程序解决方案,但请务必小心第一个答案 - 它看起来没有属性白名单,这对于安全代码也是至关重要的.
您应该使用白名单方法.当您显示配置文件时,您应首先对所有内容进行HTML编码,然后您可以解码所允许的HTML元素.这样,只有您指定的特定元素和属性才可用,并且无法通过使用您没有想到的内容来隐藏任何代码.
| 归档时间: |
|
| 查看次数: |
158 次 |
| 最近记录: |