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
  • 点击劫持

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

相关推荐
yuhaiqiang2 分钟前
被 AI 忽悠后,开始怀念搜索引擎了?
前端·后端·面试
CQU_JIAKE4 分钟前
3.21【A】
开发语言·php
今儿敲了吗15 分钟前
python基础学习笔记第九章——模块、包
开发语言·python
红色石头本尊18 分钟前
1-umi-前端工程化搭建
前端
xyq202421 分钟前
TypeScript 命名空间
开发语言
志栋智能22 分钟前
超自动化巡检:应对复杂IT环境的必然选择
运维·网络·安全·web安全·自动化
2301_8101609524 分钟前
C++与物联网开发
开发语言·c++·算法
真夜25 分钟前
关于对echart盒子设置百分比读取的宽高没有撑开盒子解决方案
前端
li星野26 分钟前
[特殊字符] Linux/嵌入式Linux面试模拟卷
linux·运维·面试
sxlishaobin26 分钟前
Java I/O 模型详解:BIO、NIO、AIO
java·开发语言·nio