首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在阻止<img>的同时允许使用XSS?

如何在阻止<img>的同时允许使用XSS?
EN

Stack Overflow用户
提问于 2008-09-21 03:09:40
回答 3查看 763关注 0票数 1

我正在使用ASP.NET网页表单来发表博客风格的评论。

编辑1:这看起来比我最初想象的要复杂得多。如何过滤src?

我更喜欢仍然使用真正的html标签,但如果事情变得太复杂,我可能会选择自定义路线。我还没有做过任何XML,所以我还需要学习更多吗?

EN

回答 3

Stack Overflow用户

发布于 2008-09-21 04:19:31

如果IMG是您唯一允许的,我建议您使用简单的方括号语法来允许它。这将消除对解析器的需求,并减少解析器的其他危险边缘情况的负载。比方说,类似于:

代码语言:javascript
复制
Look at this! [http://a.b.c/m.jpg]

它将被转换为

代码语言:javascript
复制
Look at this! <img src="http://a.b.c/m.jpg" />

您应该过滤SRC地址,这样就不会有恶意的东西传入SRC部分。比如也许

代码语言:javascript
复制
Look at this! [javascript:alert('pwned!')]
票数 3
EN

Stack Overflow用户

发布于 2008-09-21 03:17:11

使用XML解析器来验证您的输入,并删除或编码您不希望允许的所有元素和属性。在这种情况下,请删除或编码除<img> tag, and all attributes from that except src, alt and title之外的所有标签。

票数 1
EN

Stack Overflow用户

发布于 2008-09-21 04:43:18

如果你最终选择了非超文本标记语言格式(这使得b/c更容易,你可以从字面上转义所有超文本标记语言),使用像markdown这样的标准语法。markdown image syntax![alt text](/path/to/image.jpg)

还有其他的,比如Textile。其图像语法为!imageurl!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/110123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档