对于我的post实体,我将HTML和MARKDOWN都存储在数据库中(HTML是从MARKDOWN转换而来的)。HTML用于在页面上渲染和标记编辑功能(带WMD)。我在存储到db之前对HTML进行了清理。问题是:我也应该清理markdown吗?或者,如果我只将它传递给wmd-editor,那么它是xss安全的吗?
发布于 2009-08-12 14:48:51
Markdown可以包含任意HTML;这是明确允许的。因此,在发送到web客户端之前,您也应该对其进行清理,或者至少对转换为HTML的结果进行清理。
我记得在早期使用SO可能的一个漏洞是,您可以将JS内容放在Markdown中,编辑您的文章的人将在预览中触发这些脚本。我不知道这是不是已经解决了。
发布于 2009-08-12 15:51:30
我注意到你在下一句话中提到了“在存储到数据库之前对HTML进行清理”,并提到了xss-safe。这是输入验证的两个不同方面,您不应该将它们混为一谈,并在设计中同时处理这两个方面:
至于这个问题,我同意Chris的观点--因为Markdown可以包含HTML,所以必须对其进行清理。
发布于 2009-08-13 01:05:37
这只是一个补充:
This question来自于使用WMD
https://stackoverflow.com/questions/1266650
复制相似问题