前端安全的重要性
前端安全直接影响用户数据和网站信誉。常见攻击包括 XSS、CSRF 等。了解这些威胁,能帮你写出更安全的代码。
XSS (跨站脚本攻击)
攻击者注入恶意脚本。
防范措施
- 转义用户输入
1 | // 危险 |
- 使用 CSP (内容安全策略)
1 | <meta http-equiv="Content-Security-Policy" content="default-src 'self'"> |
- 框架内置防护
React、Vue 等框架默认转义内容。
CSRF (跨站请求伪造)
攻击者诱导用户执行非预期操作。
防范措施
- SameSite Cookie
1 | Set-Cookie: session=abc123; SameSite=Strict |
- CSRF Token
表单中添加隐藏 token。
1 | <form action="/transfer" method="post"> |
点击劫持
用透明 iframe 覆盖页面。
防范措施
1 | // 禁止 iframe 嵌套 |
HTTPS
强制使用 HTTPS,防止中间人攻击。
1 | // 重定向到 HTTPS |
敏感信息处理
- 不要在前端存储敏感数据
- 用环境变量管理 API 密钥
- 定期轮换密钥
依赖安全
- 定期更新依赖
- 用 npm audit 检查漏洞
- 避免使用有风险的包
输入验证
- 前端验证:用户体验
- 后端验证:安全保障
1 | function validateEmail(email) { |
错误处理
不要暴露内部错误信息。
1 | try { |
总结
安全是持续的过程。从小事做起:转义输入、使用 HTTPS、定期审计。多学习 OWASP 指南,保持警惕。