XSS(跨站脚本攻击)指攻击者将恶意脚本注入页面并在其他用户浏览器中执行,分为三类:反射型(恶意内容随请求立即回显,如搜索框)、存储型(恶意内容持久化到数据库,危害最大,如评论区)、DOM 型(前端 JS 直接操作不可信数据写入 DOM,不经过服务端)。

防御核心是"输入过滤、输出编码":渲染不可信数据时按上下文做转义——HTML 正文转义 <>&"',属性、URL、JS 上下文分别用对应编码规则。避免使用 innerHTMLdocument.writeeval,Vue/React 默认转义但要警惕 v-html / dangerouslySetInnerHTML。配合 HttpOnly Cookie 防止脚本窃取会话,CSP 作为纵深防御限制脚本来源。

易错点:只在服务端入库时过滤是不够的,因为输出上下文不确定;富文本场景应用白名单库(如 DOMPurify)而非自写正则。追问方向:CSP 如何配置、突变型 XSS(mXSS)、富文本如何安全渲染。