前端安全检查:XSS、CSRF、CSP 和依赖链分别处理
前端安全检查:XSS、CSRF、CSP 和依赖链分别处理
前端安全常被压成一张 checklist,但 XSS、CSRF、CSP 和供应链对应不同攻击面。把它们分开,修复措施才不会互相代替。
不可信内容进入 DOM 前处理
优先使用文本节点和框架默认转义;确需 HTML 时使用经过配置的 sanitizer。URL、style 和 Markdown 各有独立规则,不能只做一次字符串替换。
会话和资源加载另设防线
状态变更请求使用 SameSite、CSRF token 等策略,CSP 限制脚本来源并逐步收紧。依赖通过锁文件、来源审计和更新流程管理。
- 避免在日志和错误页暴露 token。
- postMessage 校验 origin 与消息结构。
- 安全测试只针对授权环境。
用最小恶意样例回归
为每个输入边界保存无害测试样例,升级框架或 sanitizer 后复跑。CSP 报告是线索,不等于攻击已经成功。
安全不是加一个库就结束。输入、会话、资源和依赖各守一层,前端边界才经得起变化。
原稿中的最小片段
Content-Security-Policy: default-src 'self'; object-src 'none'这段片段保留原样,只用于说明接口形态;接入项目时仍要补齐类型、错误和测试。
