当前位置: 首页 > news >正文

XSS CSRF

XSS & CSRF

xss跨站脚本攻击:注入一些非法的脚本

csrf:冒充身份

XSS

  • 反射型

/welcome:res.send(req.query.type) 输入什么就输出什么(httpOnly:false,但不是解决方案)

比如:?<script>alert(document.cookie)</script>

反射型:一定要用户先触发什么操作

原因:没有对内容进行过滤,直接返回到页面上。

对内容进行过滤

一般是服务器写得不安全

  • dom-base型

不基于后端,dom-based:修改了某个标签的属性或者往div里塞了东西

  • 存储型

持久性:恶意脚本已存储进数据库

核心解决方法:转义和过滤,过滤需要过滤的东西

CSRF

转账:访问了一些恶意页面,钱丢了

转账接口

跨站请求伪造

原理如下:

demo如下:cookie @todo

同源指的都是ajax,form img script link 都是不受跨域限制的。

防御措施:

添加验证码:每次校验验证码对不对

转账页面每次都会生成一个新验证码,然后和你请求过来的进行比对。

前提:钓鱼网站是拿不到验证码的。钓鱼网站是拿不到正常网站(3000端口)的cookie,也就没法请求验证码。只能是伪造发请求。

判断请求的来源

req.headers.referer 。但是这个可伪造

token

服务器xxx模块-加密-生成token,然后每次请求携带上token,比对一下。用户是无知觉的。

不用输验证码,不用判断来源referer

http://www.lryc.cn/news/188026.html

相关文章:

  • 新加坡星银行项目组笔试题面试题
  • 基于SpringBoot的智能物流管理系统
  • 【开源电商网站】(2),使用docker-compose和dockerfile进行配置,设置自定义的镜像,安装插件,增加汉化包,支持中文界面汉化。
  • HTML5开发实例-3D全景(ThreeJs全景Demo) 详解(图)
  • springboot项目静态资源映射
  • 【Linux初阶】多线程1 | 页表的索引作用,线程基础(优缺点、异常、用途),线程VS进程,线程控制,C++多线程引入
  • Flink--9、双流联结(窗口联结、间隔联结)
  • 家政服务行业做开发微信小程序可以实现什么功能
  • 20哈希表-三数之和
  • JVM 运行时数据区和垃圾收集算法
  • Java基于SpringBoot的高校招生系统
  • 6. Python使用Asyncio开发TCP服务器简单案例
  • 景联文科技:AI大模型强势赋能,助力自动驾驶迭代升级
  • 多周期CPU设计
  • Go 复合类型之字典类型介绍
  • 对于无法直接获取URL的数据爬虫
  • 35.树与二叉树练习(1)(王道第5章综合练习)
  • JSON数据处理工具-在线工具箱网站tool.qqmu.com的使用指南
  • leetcode:190. 颠倒二进制位
  • Spring Cloud--@RefreshScope动态刷新的注意事项
  • visual-studio-code通过跳板机连接远程服务器的配置操作
  • LuatOS-SOC接口文档(air780E)-- gpio - GPIO操作
  • 一个命令让redis服务端所有信息无所遁形~(收藏吃灰系列)
  • 通过Node.js获取高德的省市区数据并插入数据库
  • 记一次 .NET某账本软件 非托管泄露分析
  • Oracle笔记-对ROWNUM的一次理解(简单分页)
  • 系统架构设计:10 论数据湖技术及其应用
  • 【MySQL】基本查询(三)聚合函数+group by
  • 基于KubeAdm搭建多节点K8S集群
  • VuePress实现自动获取文章侧边栏目录功能