2025前端最新面试题-安全篇

你知道哪些前端攻击?该如何预防?

XSS

  • Cross Site Script 跨站脚本攻击
  • 手段:黑客将 JS 代码 插入到网页内容中,渲染时执行 JS 代码
  • 预防:特殊字符替换(前端或者后端),如 < > 替换成 &lt &gt
  • Vue、React 默认屏蔽了 xss 攻击
  • 但是 Vue (v-html)、React (dangerouslySetInnerHTML) 会导致 xss 攻击,所以尽可能不要使用这两个

CSRF

  • Cross Site Request Forgery 跨站请求伪造
  • 手段:黑客诱导用户去访问另一个网站的接口,伪造请求
  • 预防:严格的跨域限制 + 验证码机制
  • axios 默认做了 CSRF 攻击的措施

详细过程

  • 用户登录了 A 网站,有了 cookie
  • 黑客诱导用户到 B 网站,并发起 A 网站的请求
  • A 网站的 API 发现有 cookie, 认为是用户自己操作的

SCRF 预防手段

  • 严格的跨域请求限制,如判断 referrer (请求来源)
  • 为 cookie 设置 SameSite, 禁止跨域传递 cookie
  • 关键接口使用短信验证码

点击劫持

  • Click Jacking
  • 手段:诱导界面上蒙一个透明的 iframe, 诱导用户点击
  • 预防:让 iframe 不能跨域加载 (Response headers 设置 X-Frame-Options: sameorigin)

总结:前端攻击有哪些

  • XSS
  • CSRF
  • SCRF
  • 点击劫持

关于前端、后端安全或者其他校验等,前后端都要一起做,即使做重复了,也要做

相关推荐
Auc249 分钟前
OJ判题系统第6期之判题逻辑开发——设计思路、实现步骤、代码实现(策略模式)
java·开发语言·docker·容器·策略模式
向日葵xyz15 分钟前
Qt5与现代OpenGL学习(十一)OpenGL Widget鼠标控制直线旋转
开发语言·qt·学习
智慧地球(AI·Earth)19 分钟前
OpenAI for Countries:全球AI基础设施的“技术基建革命”
开发语言·人工智能·php
Waitccy20 分钟前
Linux 系统安全基线检查:入侵防范测试标准与漏洞修复方法
linux·运维·网络·安全·系统安全·等保
不学无术の码农22 分钟前
《Effective Python》第1章 Pythonic 思维总结——编写优雅、高效的 Python 代码
开发语言·python
PgSheep39 分钟前
深入理解 JVM:StackOverFlow、OOM 与 GC overhead limit exceeded 的本质剖析及 Stack 与 Heap 的差异
jvm·面试
肥肥呀呀呀1 小时前
在Flutter上如何实现按钮的拖拽效果
前端·javascript·flutter
双叶8361 小时前
(C语言)超市管理系统(测试版)(指针)(数据结构)(二进制文件读写)
c语言·开发语言·数据结构·c++
PXM的算法星球1 小时前
使用CAS操作实现乐观锁的完整指南
开发语言
TDengine (老段)1 小时前
基于 TSBS 标准数据集下 TimescaleDB、InfluxDB 与 TDengine 性能对比测试报告
java·大数据·开发语言·数据库·时序数据库·tdengine·iotdb