小编use*_*171的帖子

Django/Python:将Markdown转换为安全HTML

我接受Markdown并需要将其转换为HTML以在Django中安全渲染.现在我接受form.cleaned_data并将其转换为HTML:

import markdown
html_body = markdown.markdown(body_markdown, safe_mode=True)
html_body = html_body.replace('[HTML_REMOVED]', '')
return html_body
Run Code Online (Sandbox Code Playgroud)

在模板中,我将其渲染为:

{{ object.content|safe|capfirst }}
Run Code Online (Sandbox Code Playgroud)

但是,如果您发布:

0;url=javascript:alert('hi');" http-equiv="refresh
Run Code Online (Sandbox Code Playgroud)

JS将呈现,因此XSS是可能的.

python django markdown django-templates

5
推荐指数
1
解决办法
2345
查看次数

标签 统计

django ×1

django-templates ×1

markdown ×1

python ×1