8

我想让用户留下富文本评论,可能使用降价。我已经安装了 Reddit 上使用的库,但我担心去年发生的 javascript 注入攻击,特别是因为我仍然不清楚攻击的细节。我还应该担心评论安全吗?是否有一个测试字符串可以通过我的系统来检查是否存在导致 reddit 失效的相同缺陷?

4

3 回答 3

4

Python-Markdown - 或多或少的“标准” - 具有转义 html 标签的“安全模式”功能。这应该足以应对大多数 HTML 注入攻击。

于 2010-03-02T10:52:08.697 回答
4

reddit 现在使用折扣降价库

于 2010-03-06T17:26:13.483 回答
2

其他答案提到了 Python-Markdown 的安全模式,但现在已弃用。引用 Python-Markdown 的作者的话:

“安全模式”是一个糟糕的名称选择,我们继续使用它来进行向后比较(旧代码仍然适用于我们的新版本)。它实际上是一种无标记模式。换句话说,这只是一种禁止原始 html 的方式,并不能保证安全。

他们现在建议使用像Bleach这样的 HTML 清理器来清理 Markdown 输出。mdx_bleach是一个 Python-Markdown 扩展,它就是这样做的。免责声明:我是这个扩展的作者。

因为它使用 html5lib 以与浏览器相同的方式解析文档片段,所以 Bleach 对未知攻击具有极强的弹性,比基于正则表达式的消毒剂更具弹性。

于 2015-04-16T10:38:26.967 回答