前端知识|前端安全之csrf

author author     2022-12-20     130

关键词:

CSRF/XSRF(Cross-Site Request Forgery),即跨站请求伪造,也被称为“One Click Attack”或者Session Riding。基本原理是通过伪装来自受信任用户的请求来利用受信任的网站。
技术分享图片
×××原理:
如图所示,用户首先访问网站A,通过登录身份验证成功,网站A下发cookie保存在用户的浏览器中。用户又去访问了网站B,网站B在下发用户页面的时候会有一个引诱点击,这个引诱点击一般是一个链接,这个链接一般指向网站A的一个存在漏洞的API接口,尤其这个API接口是GET类型。当用户禁不住诱惑点击了这个引诱点击,这个点击就访问到了A网站,此时浏览器就会自动上传cookie,此时网站A对cookie进行确认,发现是合法用户,此时就会执行这个API的动作(以前微博就出现过CSRF×××,出问题的接口导致很多情况多了很多关注)。

总结
CSRF能造成×××的原理:
用户登录过网站A。
网站A中某一个接口存在着这种漏洞。这两条件缺一不可。

防御措施

1.Token验证
×××原理中访问漏洞接口的时候浏览器只上传了cookie,没有手动的上传一个token。这个token是用户登录注册甚至只是访问网站A,服务器会自动向用户本地存储一个token,在用户访问各个接口的时候,如果没带这个token,服务器就不会通过验证。所以当用户点击引诱链接,这个链接只会自动携带cookie,但是不会自动携带token,这样就能避免×××。

2.Referer验证
Referer,即页面来源。服务器通过判断页面来源是不是自己站点的页面来源,如果是就执行接口动作,如果不是一律拦截。这样也能避免×××。

3.隐藏令牌
类似于Token验证,原理是把token放在HTTP头的自定义属性中,而不是把信息放在链接上,增加了隐蔽性。本质上和Token验证没什么区别,只是用法上的一些区别。

前端安全系列之二:如何防止csrf攻击(代码片段)

...展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的XSS、CSRF等安全问题之外,又时常遭遇网络劫持、非法调用HybridAPI等新型安全问题。当然... 查看详情

前端安全之csrf攻击原理和防护方法

...的人。引言:必修课为什么选择CSRF?CSRF涉及到的前端知识点比较多,全面理解需要系统的学习Cookie,前端跨域,HTTP协议,web浏览器等知识。理解CSRF攻击和防护方法是前端进阶要去,我也希望大家都能... 查看详情

前端安全之xss和csrf攻击

1.Csrf攻击概念:csrf攻击(Cross-siterequestforgery):跨站请求伪造;2.Csrf攻击原理:用户是网站A的注册用户,且登录进去,于是网站A就给用户下发cookie。从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要的条件:(1)登录... 查看详情

前端安全知识必备--xss攻击和csrf攻击(代码片段)

XSS攻击--跨站脚本攻击场景:比如在正常发表文章,或评论他人文章时,注入恶意脚本。待他人查看时触发恶意脚本达到攻击目的1.通过注入的标签事件触发<bodyonload="alert(‘xss‘)"></body><ponclick="alert(‘1‘)"style="postion:f... 查看详情

前端xss相关整理(代码片段)

前端安全方面,主要需要关注XSS(跨站脚本攻击Cross-sitescripting)和CSRF(跨站请求伪造 Cross-siterequestforgery)当然了,也不是说要忽略其他安全问题:后端范畴、DNS劫持、HTTP劫持、加密解密、钓鱼等CSRF主要是借用已登录用户... 查看详情

web前端安全之利用flash进行csrf攻击(代码片段)

整理于《XSS跨站脚本攻击剖析与防御》—第6章Flash在客户端提供了两个控制属性:allowScriptAccess属性和allowNetworking属性,其中AllowScriptAccess控制Flash与HTML页面的通信,如果设置不恰当会导致XSS;而AllowNetworking控制Flash与外部网... 查看详情

前端面试之道(高清彩图)

课程目录:1-小册食用指南2-JS基础知识点及常考面试题(一)3-JS基础知识点及常考面试题(二)4-ES6知识点及常考面试题5-JS异步编程及常考面试题6-手写Promise7-EventLoop8-JS进阶知识点及常考面试题9-JS思考题10-DevToolsTips11-浏览器基础... 查看详情

web前端安全——xss和csrf(代码片段)

一XSSXSS(Cross-sitescripting),指的是跨站脚本攻击,攻击者通过向页面A注入代码,达到窃取信息等目的,本质是数据被当作程序执行。XSS危害是很大的,一般XSS可以做到以下的事情:获取页面的数据... 查看详情

CSRF 保护如何为我提供比 CORS 控制更高的安全性(前端/后端位于两个不同的域)?

】CSRF保护如何为我提供比CORS控制更高的安全性(前端/后端位于两个不同的域)?【英文标题】:HowdoesCSRFprotectiongivemegreatersecuritythanCORScontrolwithfront-end/back-endbeingontwodifferentdomains?【发布时间】:2015-06-0317:44:33【问题描述】:如... 查看详情

转:前段安全之xss攻击(代码片段)

前端安全 原文链接:https://www.freebuf.com/articles/web/185654.html随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的XSS、CSR... 查看详情

前端劝退之前端知识体系(前端面试体系)(代码片段)

关注公众号 前端开发博客,领27本电子书回复加群,自助秒进前端群写文的目的主要是梳理下知识,能对复习有点帮助就行,本文主要针对前端知识体系相关,涉及的内容有:浏览器计算机网络前端基础&#... 查看详情

前端基础知识之css

前端基础知识之css  https://www.cnblogs.com/liwenzhou/p/7999532.html#autoid-4-5-0CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素。  css就是修饰那些html元素的其主要内容为两大块: 找到标签 和 修 查看详情

前端知识之html

html介绍web服务器的本质importsocketsk=socket.socket()sk.bind(('127.0.0.1'.8080))sk.listen(5)whileTrue:conn,addr=sk.accept()data=conn.recv(1024)conn.send(b"http/1.1200ok")conn.send(b& 查看详情

前端安全--csrf攻防(代码片段)

CSRF流程CSRF攻击有着如下的流程:受害者登录a.com,并保留了登录凭证(Cookie)。攻击者引诱受害者访问了b.com。b.com向a.com发送了一个请求:a.com/act=xx。浏览器会…a.com接收到请求后,对请求进行验证,并确认是受害者的凭证,误... 查看详情

Spring(Spring Boot)如何向前端提供 CSRF 令牌?

】Spring(SpringBoot)如何向前端提供CSRF令牌?【英文标题】:HowdoesSpring(SpringBoot)provideCSRFtokentofrontend?【发布时间】:2021-03-1517:51:02【问题描述】:我正在尝试将CSRF保护添加到基于Spring-Boot(尤其是WebFlux)的项目中。到目前为止... 查看详情

前端基础知识之html和css全解

前端回顾目录前端回顾基础知识HTTP协议认识HTMLHTML组成HTML标签div和span标签特殊的属性常用标签认识css选择器属性前端就是展示给用户并且与用户进行交互的操作界面。前端包括包括三部分:html:网页的骨架,没有任何样式,比... 查看详情

前端基础知识之html和css全解

前端回顾目录前端回顾基础知识HTTP协议认识HTMLHTML组成HTML标签div和span标签特殊的属性常用标签认识css选择器属性前端就是展示给用户并且与用户进行交互的操作界面。前端包括包括三部分:html:网页的骨架,没有任何样式,比... 查看详情

前端知识之html内容

importsocketsk=socket.socket()sk.bind(("127.0.0.1",8080))sk.listen(5)whileTrue:conn,addr=sk.accept()data=conn.recv(8096)conn.send(b"HTTP/1.1200OK")conn.send(b"<h1>Helloworld!</h1>" 查看详情