CSRF漏洞

1.什么是CSRF漏洞

跨站请求伪造(Cross-Site Request Forgery)
实现流程:在登录服务器时,有访问了第三方的网站,第三方网站中有恶意代码(发起对目标服务器的端口的调用)的网页,浏览器执行了其中的代码
在这里插入图片描述

2.CSRF典型案例

在这里插入图片描述
CSRF漏洞危害:
1.修改账号信息
2.利用管理员账号,上传木马文件
3.传播蠕虫病毒(点击、扩散、点击…)
4.和其他手段配合,比如:XSS、SQL注入

XSS漏洞危害:
1.获取cookie ,实现冒充身份的后续操作
2.刷点击
3.弹广告
4.传播蠕虫病毒
在这里插入图片描述
两者之间的区别:
1.是否存在第三方网站,是,则为CSRF
2. CSRF不需要获取cookie,会让浏览器自动去匹配
3. 执行攻击时是否需要将代码注入到目标网站,为XSS

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3 CSRF 漏洞挖掘

检测工具:
Burp Suite
CSRF Tester
https://github.com/s0md3v/Bolt
在这里插入图片描述

4. CSRF防御思路

1.区分一个请求是来自本网页还是第三方网页
2.本网页前端页面和伪造的请求变得不一样
方法:
1)验证请求来源地址;referer识别
2)关键操作添加验证码;
3)在请求地址添加 token 并验证。

(1)referer识别
在HTTP Header中有一个字段Referer,它记录了HTTP请求的来源地址。如果Referer是其他网站,就有可能是CSRF攻击,则拒绝该请求。但是,服务器并非都能取到Referer。很多用户出于隐私保护的考虑,限制了Referer的发送。在某些情况下,浏览器也不会发送Referer,例如HTTPS跳转到HTTP。
在这里插入图片描述
2)token机制:在请求中加入一些随机字段,让第三方网站无法伪造请求
步骤:
(1).用户使用账号密码登录后,服务器下发一个随机的token(令牌)字段给客户端,并且服务端把这个字段保存在session中。

生令牌代码:

(2)客户端把这个token保存起来,放到隐藏字段。
(3)用户在登陆状态下,在之后访问的时候,都要携带该token字段。(一次有效)
(4)服务器从session中拿出token值进行对比,如果一致,说明请求合法。
在这里插入图片描述(5)用户退出,session销毁,token失效.

2. 验证码,二次验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wow2ok

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值