GUIDE深度 · Deep dive

Markdown 渲染的 XSS 风险

Markdown 允许内嵌 HTML 和链接,如果直接把用户输入塞进 innerHTML,就可能执行脚本或跳转到 javascript:。安全做法是先转义,再用白名单渲染。

更新 2026-10-31 · 公式可核验

两个入口

原始 HTML:<script>、onerror= 等。

链接协议:javascript:、data: 等。

防护

输入先 HTML 转义;只生成白名单标签。

链接只允许 http(s)/mailto/相对路径;加 CSP 和 sanitizer。

常见问题

转义就够了吗?

对纯文本够;富文本还要 sanitizer + CSP。

服务端也要处理吗?

要;输出到 HTML 的每一层都要按上下文处理。

数据来源

相关计算器

Markdown 预览输入 Markdown,实时看到标题、列表、代码、引用和链接的渲染结果。

更多指南

Markdown 基础语法阅读指南