
什么是 CSRF? CSRF的危害和防御方法有一定的参考价值。有需要的朋友可以参考一下,希望对你有所帮助。

什么是 CSRF
在了解 CSRF 之前,我们需要了解两个先决条件。首先是有很多方法可以验证登录权限。目前大部分网站仍然使用会话任务方式。 session机制简单来说就是服务端使用key-value对来记录登录信息,同时在cookie中存储cookie中的session id(也就是刚才提到的key)。此外,我们知道浏览器中的 HTTP(s) 请求会自动为我们上传 cookie 到服务器。这样每次请求时通过cookie获取session id,然后通过它从服务器获取登录信息,完成用户权限的验证。
这也是一个不错的功能。但是由于cookies过于开放,如果用户在A网站登录,如果用户在访问B网站时向A网站发送了请求,那么该请求实际上包含了用户在A网站的登录信息。如果用户此时不知道B站A网站的请求,是非常严重的危害。上述过程是跨站请求攻击,即Cross-Site Request Forgery,即CSRF。
CSRF 的危害
简单总结 CSRF漏洞就是利用网站权限验证中的漏洞在用户不知情的情况下发送请求,从而达到“伪装”用户的目的。使用 CSRF 的攻击者主要包括以下几种类型的攻击:
攻击者可以欺骗受害者用户完成受害者允许的任何状态改变操作,例如:更新账户信息、完成购物、注销甚至登录。
获取用户的隐私数据
与其他漏洞合作
CSRF 蠕虫
其中,CSRF蠕虫,顾名思义,产生蠕虫效应,将CSRF攻击一个一个,十个一个地传播。例如,社区私信好友界面和好友列表获取界面存在CSRF漏洞,攻击者可以将其组合成一个CSRF蠕虫——用户访问恶意页面时,通过以下方式获取其好友列表信息CSRF,然后利用私信好友的CSRF漏洞,向每个好友发送指向恶意页面的消息。只要有人查看此消息中的链接,CSRF蠕虫就会继续传播,可能的危害和影响是巨大的!
防御方法
从上面的描述可以知道,CSRF有两个特点:利用cookie自动携带的特点和跨站攻击。那么针对这两个特点,可以采用以下解决方案。
检查Referer字段
大家都知道HTTP头中有一个Referer字段,用来表示请求来自哪个地址。通过在网站中查看请求的这个字段,我们可以知道请求是否是从这个网站发出的。我们可以拒绝所有不是本站发出的请求,从而避免了CSRF的跨站特性。
const { parse } = require('url');module.exports = class extends think.Logic { indexAction() { const referrer = this.ctx.referrer(); const {host: referrerHost} = parse(referrer); if(referrerHost !== 'xxx') { return this.fail('REFERRER_ERROR'); } }}
同样以ThinkJS为例,在Logic中做一个简单的判断即可。该方法利用了客户端无法构造Referrer这一事实。虽然简单,但是当网站域名有多个,或者域名频繁更换的时候会变得很麻烦,而且也有一定的局限性。
Token验证
由于CSRF利用了浏览器自动传输cookie的特性,另外一个防御思路是不通过cookie传递验证信息,在其他参数中加入随机加密字符串进行验证。这里还有两种方法:
随机字符串:为每次提交添加一个随机字符串参数。服务器通过页面发送参数并将其添加到每个请求的提交参数中。服务器通过检查参数是否一致来判断参数是否一致。用户请求。由于 CSRF 攻击中的攻击者无法事先知道随机字符串的值,因此服务器可以通过验证该值来拒绝请求。
JWT:其实除了session登录,JWT token 登录验证也越来越流行。该方法是在前端记录登录token,通过在每次请求的时候在Header中添加一个认证头来实现登录验证过程。由于攻击者无法知道 CSRF 攻击中的 token 值,因此也可以通过这种方式防止 CSRF 攻击。当然,除了JWT之外,token登录的方式还有很多,比如OAuth。
:CSRF是什么?CSRF有什么危害以及它的防御方法,https://vps.caogenba.com.com/69089.html
如今做站的人不多了,多个朋友多条路子,加入站长论坛和大佬们同道交流,Tips:可以免费打广告哦~ 点击立即加入>>
此前《七大罪》曾有几集过渡剧情的特番,而关于第二季动画的消息日前也已经公布,动画将在明年1月上映,届时将直面世纪霸权紫罗兰了。而关于第二季的内容,按照漫画进度十诫也将悉数登场,而在此前还未登场过的七大罪之一傲慢之罪艾斯卡诺也准备出场了,目前为其配音的声优则是组长杉田智和。按照漫画剧情来看第二季如果要把故事完全展开的话,那么半年番基本上是妥妥的了!距离7月22日已经越来越近,这个日期既是《魔法少女奈叶》剧场版的首映日也是《周刊文春》准备爆料某知名声优恋爱的日子。而鉴于此前种种迹象,这位声优是水树奈奈的可能性已经十分的大,而最近又有一件事情基本上要坐实这个猜想。
作为重点关注的对象水树奈奈确定将在7月22日做客花江夏树、日高里菜主持的广播节目,并将在节目上有重大发表,要我说当一切巧合的事都汇聚在一起,就已经不再是巧合了,关于节目上的重大发表怕不是就是奈奈酱恋爱的消息。不过呢,对于声优界的御三家来说年龄确实不小了,若是能得到幸福,对于粉丝们来说也是个不错的消息。至于具体究竟会是谁呢?还是耐心等到22日再说吧!最近几日,日本电影方面《银魂》真人版以及《口袋妖怪》的新剧场版双双上映,然而在pokemon情怀下,《银魂》的票房虽然不错但还是败给了pokemon。
在周末首日票房方面,pokemon强势登顶,而《银魂》则排在了第三位,以至于导演福田雄一在推特上发文鼓励粉丝们去贡献电影票,不过讲真的,《银魂》真人版有如此收获已经算不错的了,pokemon一路走来已经20年,伴随了无数人的童年,这次剧场版又是回到故事的原点,所以票房登顶并不算意外!七月新番《异世界食堂》虽然作为美食番放在了深夜进行放送而颇有报复社会的意思,但是这丝毫没有阻挡观众对其的好评。
该作在niconico上放送第二话之后,好评率可以说高达98.8%,俨然要成为本季霸权的感觉,不过呢,理性的分析下,这部番本身以美食为主,但也隐含了人与人奇妙邂逅的故事线,单元剧形式下想要争夺霸权还是有点困难的,从题材内容来说更吸引看番多年又或是年龄较大的观众,年轻一点的可能就不太能静下心看这种节奏较慢的动画!