XSS & CSRF

X SS & 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

相关推荐
rainboy1 分钟前
Flutter :自己动手,封装一个小巧精致的气泡弹窗库
前端·flutter·github
合作小小程序员小小店15 分钟前
web网页开发,在线%人力资源管理%系统,基于Idea,html,css,jQuery,java,jsp,ssh,mysql。
java·前端·css·数据库·mysql·html·intellij-idea
ASKED_201919 分钟前
常用 Linux 命令大全(文件、网络、时间、进程、数据库、工具全覆盖)
linux·网络·数据库
Ace_317508877620 分钟前
拼多多商品详情接口深度解析:从加密参数破解到数据全量获取
前端·数据库·github
yuejich26 分钟前
命名规范snake_case
服务器·前端·数据库
天平32 分钟前
开发了几个app后,我在React Native用到的几个库的推荐
android·前端·react native
我还可以再学点1 小时前
八股文面试攻略四:网络篇
网络·面试·职场和发展
q***76661 小时前
显卡(Graphics Processing Unit,GPU)架构详细解读
大数据·网络·架构
消失的旧时光-19431 小时前
Kotlinx.serialization 对多态对象(sealed class )支持更好用
java·服务器·前端
少卿1 小时前
React Compiler 完全指南:自动化性能优化的未来
前端·javascript