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

相关推荐
hiahiahia12316 分钟前
Structured Output
前端·人工智能
前进吧-程序员19 分钟前
C++20 协程入门实战:从 co_await 到一个 100 行的异步任务调度器
网络·c++·c++20
FRing0328 分钟前
JavaScript入门到精通三十一(原型继承、原型链)
开发语言·前端·javascript
前进吧-程序员31 分钟前
实战:C++20 协程 + io_uring 写一个 400 行的 echo server
网络·c++·c++20
程序员大阳38 分钟前
副队长JavaScript教程(52)-DOM操作元素的内容
javascript·dom·innertext·innerhtml·value·内容操作
云飞云共享云桌面2 小时前
机械制造研发部门:一台SolidWorks云主机替代 10 台传统图形工作站
运维·服务器·网络·3d·自动化·制造
山雀~2 小时前
CSP 安全漏洞修复
前端·网络协议
裕波2 小时前
苏千|从 cnpm 到 Vite+:AI 时代的开发者体验演进
javascript
console.log('npc')2 小时前
周期任务功能完整实现:CRON 编辑器 + 模板变量 + 执行历史
javascript·vue.js·编辑器
loulanyue_2 小时前
从碎片文档到工业知识网络:TDengine工业知识图谱架构设计与大模型落地破局——读涛思数据OpenDay实录
网络·知识图谱·tdengine