本文介绍了Markdown和XSS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
好吧,所以我一直在SO和其他地方读到有关markdown的信息,用户输入和db之间的步骤通常表示为
Ok, so I have been reading about markdown here on SO and elsewhere and the steps between user-input and the db are usually given as
- 将markdown转换为html
- 清除html(带有白名单)
- 插入数据库
但是对我来说,执行以下操作更有意义:
but to me it makes more sense to do the following:
- 清除降价标签(删除所有标签-没有例外)
- 转换为html
- 插入数据库
- sanitize markdown (remove all tags -no exceptions)
- convert to html
- insert into database
我错过了什么吗?在我看来,这几乎是防XSS的
Am I missing something? This seems to me to be pretty nearly xss-proof
推荐答案
请查看此链接:
http://michelf.com/weblog/2010/markdown-and-xss/
> hello <a name="n"
> href="javascript:alert('xss')">*you*</a>
成为
<blockquote>
<p>hello <a name="n"
href="javascript:alert('xss')"><em>you</em></a></p>
</blockquote>
∴¶您必须对 转换为HTML后进行消毒.
∴ you must sanitize after converting to HTML.
这篇关于Markdown和XSS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!