前端2026-04-15
前端面试题:安全与可访问性
总结前端安全、可访问性、跨站攻防与无障碍实践的常见面试题。
前端面试题:安全与可访问性
1. XSS 与 CSRF 有何区别?
- XSS(跨站脚本)通过注入恶意脚本劫持用户操作。
- CSRF(跨站请求伪造)利用用户已登录身份发送伪造请求。
- XSS 通常通过输入校验和输出编码防御,CSRF 则通过 Token、SameSite Cookie、Referer 校验防御。
2. 前端如何防御 XSS?
- 对用户输入进行 HTML 转义。
- 使用安全模板或框架内置转义机制。
- 避免直接使用
innerHTML插入不可信内容。
3. 什么是 Content Security Policy?
- CSP 是浏览器的安全策略,用于限制资源加载来源。
- 通过
Content-Security-Policy响应头控制脚本、样式、图片、字体等。 - 可以有效减少 XSS 攻击面。
4. Web 可访问性主要关注什么?
- 语义化 HTML,便于辅助技术解析。
- 提供可操作的键盘导航。
- 保持颜色对比度和可读性。
- 使表单、图表、媒体内容具备可访问替代文本。
5. aria-* 属性的作用是什么?
- 为无障碍技术提供额外语义信息。
- 常用于复杂组件、可折叠菜单、进度条、提示文本等。
- 不能滥用,应与语义标签结合使用。
6. 如何保证前端资源对屏幕阅读器友好?
- 提供清晰的标签和描述。
- 防止内容闪烁或自动跳转。
- 使用
role和aria-label等增强描述。
7. 安全开发最佳实践有哪些?
- 不信任客户端数据,统一在服务端校验。
- 避免将敏感信息暴露在前端代码中。
- 使用 HTTPS、CSP、SameSite、验证码等手段强化安全。
8. 对前端登录认证你会如何设计?
- 前端应使用安全 Cookie 或 Token 方式保存会话。
- 避免把密码或敏感凭据放到 LocalStorage。
- 结合短生命周期、刷新机制和安全策略。
前端安全可访问性