前端安全的问题以及应对策略

本文探讨了前端安全中的主要威胁,包括XSS(跨站脚本攻击)的存储型、反射型和DOM型及其防御措施,如输入过滤、纯前端渲染和内容安全策略。同时,讲解了CSRF(跨站请求伪造)攻击的类型及防御策略,如同源检测、CSRF Token和Samesite Cookie属性。还提到了网络劫持、中间人攻击和Iframe滥用等问题及其防范方法。
摘要由CSDN通过智能技术生成

有哪些可能引起前端安全的问题?

  • 跨站脚本攻击(Cross-Site Scripting,XSS):一种代码注入方式,为了与 CSS 区分所以被称为 XSS。早期常见于网络论坛,起因是网站没有对用户的输入进行严格的限制,使得攻击者可以将脚本上传到帖子让其他啊人在浏览到有恶意脚本的页面。其注入方式很简单,包括但不限于 JavaScript / VBScript / CSS / Flash 等;
  • iframe滥用:iframe 中的内容是由第三方来提供的,默认情况下它们不受我们控制,它们可以在 iframe 中运行 JavaScript 脚本、Flash 插件、弹出对话框等,这些可能会破坏前端用户的体验;
  • 跨站请求伪造(Cross-Site Request Forgeries,CSRF):指攻击者通过设置好的陷阱,强制对于完成认证的用户进行非预期的个人信息或设定信息等某些状态更新,属于被动攻击;
  • 恶意第三方库:无论开发服务端还是客户端,绝大多数时候我们都在借助开发框架和各种第三方工具库进行快速开发,一旦第三方库被植入恶意代码人容易引起安全问题。

XSS 攻击(跨站脚本攻击)

英文全称:Cross Site Script,XSS 攻击,通常指黑客通过 HTML 注入篡改了网页,插入恶意脚本,从而在用户浏览网页时,控制用户浏览器的一种行为

XSS分类

根据攻击的来源,XSS 攻击可分为存储型、反射型和 DOM型三种。

  • 存储区:恶意代码存放的位置;
  • 插入点:由谁取得恶意代码,并插入到网站。
存储型XSS

原理:一般是攻击者输入的恶意代码存储在服务端,主要是将 XSS 代码发送到服务器(不管是数据库、内存还是文件系统),只要受害者浏览包含次恶意代码的网页就会执行恶意代码

存储型攻击步骤:

  1. 攻击者将恶意代码提交到目标服务器中;
  2. 用户打开目标网站时,网站服务器取出包含恶意代码的数据,拼接在 HTML 中返回给浏览器;
  3. 用户浏览器接收到相应后解析执行,混在其中的恶意代码也被执行;
  4. 恶意代码窃取用户数据并发送到攻击者网站;或冒充用户的行为,调用目标网站接口执行攻击者指定的操作。

这种攻击常见于带有用户保存数据的网站,比如论坛发帖、商品评论、用户私信等。

反射型XSS

原理:反射型 XSS,也叫非持久型 XSS,是指发生请求时,XSS 代码出现在请求 URL 中,作为参数提交到服务器中,服务器解析并响应。响应结果中包含 XSS 代码,最后浏览器解析并执行

反射型攻击步骤:

  1. 攻击者构造出特殊的 URL,其中包含恶意代码;
  2. 用户打开带有恶意代码的 URL 时,网站服务端将恶意代码从 URL 中取出,拼接在 HTML 中返回给浏览器;
  3. 用户浏览器接收到响应后解析执行,混在其中的恶意代码也被执行;
  4. 恶意代码窃取用户数据并发送到攻击者网站;或冒充用户的行为,调用目标网站接口执行攻击者指定的操作。

反射型 XSS 漏洞常见于通过 URL 传参的功能,比如网站搜索、跳转等。

由于需要用户主动打开恶意的 URL 才能生效&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值