首页 > 其他分享 >常见前端安全问题总结

常见前端安全问题总结

时间:2023-05-20 14:56:07浏览次数:29  
标签:总结 请求 获取 网站 恶意代码 前端 常见 攻击 cookie

一、XSS攻击

全称跨站脚本攻击,简称XSS攻击,攻击者通过在目标网站上HTML注入篡改网页来插入恶意脚本,

当用户在浏览网页时获取用户的cookie等敏感信息,进一步做一些其他危害的操作。

根据攻击的来源,该攻击还可以分为:

1)存储型攻击:一般是在有评论功能的网站将恶意代码当作评论内容存储到服务端,受害者再次浏览网页,就会自动解

         析评论内容并执行,比较简单是输入一个三方服务器的脚本(发送一个请求都三方服务器)到评论区,其他用户查看时,

           就会获取这个脚本,并执行脚本的内容,就可以获取到用户的cookie

2)反射型攻击:也称为非持久型XSS,恶意代码并没有存储到目标网站的服务器中,而是通过一个具有诱惑性的链接跳转到目标网站,

         当然这个链接除了正常的参数外还会有恶意代码,经常用来获取cookie;比如用户现在登陆了A网站,

         然后在其他网站看到一个一刀万点暴击的游戏链接(链接中模拟原网站的搜索接口同时在参数中下发了一个请求),然后被动跳转到目标网站,

         目标网站将恶意代码返回到页面被浏览器执行,就可以被获取到cookie信息

3)DOM型攻击:与前两种不同,不需要和服务端进行交互,攻击者构建被攻击网站的URL,URL参数中包含可执行的语句,比如eval或者innerHTML,通过诱惑性

        的链接访问该连接后就可以执行恶意代码

防范措施:

1)前端进行输入过滤,将特殊字符进行转义或者输入限制,同时后端对特殊字符进行转义

2)设置HttpOnly,XSS的攻击目标主要是获取用户的cookie,设置此属性可以防止获取cookie

3)开启CSP,为页面的内容安全制定一系列防护措施,通过CSP可以指定资源文件的来源,避免跨域操作等

 

二、CSRF攻击

跨站请求伪造,攻击者获取到用户的cookie等登陆信息后,模拟网站请求进行攻击操作,比如删除帖子、银行转账

防范措施:

1)数据修改的请求尽量使用post而不是get请求

2)服务端判断请求头中Refer或者Origin的来源,对非本网站的进行过滤

3)用户登陆后,生成一个有时效的随机token,每个请求发起时携带该token,服务端判断token的真实性,这种token攻击者无法伪造

标签:总结,请求,获取,网站,恶意代码,前端,常见,攻击,cookie
From: https://www.cnblogs.com/codeOnMar/p/17391072.html

相关文章

  • Revit二次开发 知识点总结(表格)
    Revit二次开发知识点总结(表格) 宏Macro概述宏是一种程序,用来实现重复任务的自动化;宏可以执行一系列预定义的步骤,从而完成特定任务;模块是对宏的分组;实际上是一个编程项目;应用程序级的宏:可以在任何文档中使用,可以自行运行;可以独立于Revit运行;可以向Revit添加工具;......
  • 基于GA遗传优化的CDVRP,CVRP,DVRP,TSP以及VRPTW常见路径优化问题求解matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:        TSP最优路径TSP最优路径TSP最优路径BestRoute:0->2->10->5->3->6->9->1->4->7->8->0TotalDistance=95.275km  DVRP最优路径DVRP最优路径DVRP最优路径总路程=19......
  • 基于GA遗传优化的CDVRP,CVRP,DVRP,TSP以及VRPTW常见路径优化问题求解matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:TSP最优路径TSP最优路径TSP最优路径BestRoute:0->2->10->5->3->6->9->1->4->7->8->0TotalDistance=95.275kmDVRP最优路径DVRP最优路径DVRP最优路径总路程=198.801kmBestRoute:0->10->......
  • 前端三要素
    HTML、CSS、js是构建网页的三种主要技术,也被称为前端技能三要素。 1.HTML:超文本标记语言是一种使用标签(标记)描述网页的语言;结构层;是一种标记语言 2.CSS:层叠样式表主要用于美化web页面外观表现层/样式层样式表语言 3.JavaScript:简称JS,用于网页交互的解释性脚本语......
  • 应用系统项目开发过程总结
    一调研阶段a.需求调研:在项目开始之前,需要对目标用户进行调查,了解他们的需求和期望。这包括与潜在用户进行访谈、收集反馈和数据分析等。b.环境调研:目前系统功能,版本,技术类型,接口情况,网络环境,系统环境c.技术调研:预期本项目涉及到的新技术,安排人开始熟悉引入d.开发环境准备......
  • c#Mutex总结
    c#Mutex的用法总结C#多线程系列之进程同步Mutex类......
  • 1. react项目【前端】+C#【后端】从0到1
    1、创建前端基础框架 1.1前端创建软件: 1.1.1npxcreate-react-apppcps:pc是文件名; 1.1.2npmstart启动项目 2、创建后端基础框架软件: 2.1创建webapi项目  Program.cs是启动文件;  ......
  • 23-05-20 总结 Meeting rooms 系列3个题目
    题目列表:P1.【easy,会员】MeetingRooms-LeetCodeP2.【Mid,会员】MeetingRoomsII-LeetCodeP3.MeetingRoomsIII-LeetCodeP1.会员题,检测会议是否安排得开思路:非常简单,直接按starttime进行排序,然后检测是否有overlap即可时间:O(nlogn),空间:O(1)classSolut......
  • 常用的视频帧提取工具和方法总结
    视频理解任务最基础也是最主要的预处理任务是图像帧的提取。因为在视频理解任务中,视频可以看作是由一系列连续的图像帧组成的。因此,要对视频进行理解和分析,首先需要从视频中提取出每一帧的图像。图像帧的提取是视频理解任务的基础,因为后续的处理和分析都是基于单独的图像帧进行......
  • python -- pandas常见的一些行、列操作方法(感兴趣的,可以跟着一起练练手)
     这篇文章分享一下pandas常见的一些行、列操作方法,比较基础,感兴趣的童鞋可以看看。 首先,我们用“random.seed(inti)” 生成一组测试数据。对于random.seed()有兴趣进一步了解的,可以前往阅读 python--numpy.random.seed() 如果“pipinstallpandas”遇到问题,可参考......