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

相关推荐
梁辰兴16 小时前
计算机网络基础:吉比特以太网
网络·计算机网络·计算机·以太网·计算机网络基础·梁辰兴·吉比特以太网
_码力全开_16 小时前
第一章 html5 第一节 HTML5入门基础
前端·javascript·css·html·css3·html5
KLW7516 小时前
vue 绑定动态样式
前端·javascript·vue.js
没有bug.的程序员16 小时前
微服务网关:从“必选项”到“思考题”的深度剖析
java·开发语言·网络·jvm·微服务·云原生·架构
幼稚鬼_Blog17 小时前
可拖拽悬浮按钮组件支持vue3/vue2
前端·javascript·html
前端小怪兽zmy17 小时前
Vue3实现纯前端语音输入成文字显示
前端·javascript·elementui
xiaomin-Michael17 小时前
linux 用户信息 PAM用户认证 auditctl审计
服务器·网络·安全
若尘啊若辰17 小时前
安全通用要求之十安全运维管理
网络·数据库·网络安全·等保·等级保护·安全通用要求
ohyeah17 小时前
原子化 CSS 与 Fragment:现代前端开发的高效实践
前端
鱼鱼块17 小时前
告别重复传参!用柯里化提升代码优雅度
前端·javascript·面试