OWASP之CSRF跨站请求伪造

CSRF(Cross-site request forgery)跨站请求伪造

一、CSRF定义

CSRF是通过伪装用户的请求来利用网站。利用网站漏洞从用户那里恶意盗取信息

二、CSRF危害

以受害者名义发送邮件,发消息,盗取受害者的账号,甚至购买商品,虚拟货币转账,修改受害者的网络配置(比如修改路由器DNS、重置路由器密码)
造成的问题包括:个人隐私泄露、机密资料泄露、用户甚至企业的财产安全;
盗用受害者身份,受害者能做什么,攻击者就能以受害者的身份做什么。

三、CSRF漏洞构成

1.漏洞风险存在

目标站点或系统存在一个可以进行数据修改或者新增操作,且此操作被提交到后台的过程中,未提供任何身份识别或校验的参数。后台只要收到请求,就立即下发数据修改或新增的操作;存在以上情况说明存在漏洞风险。
出现比较多的场景有:个人资料修改、用户密码的修改、支付、购物地址的修改或后台管理账户的新增、数据库备份等等操作过程中。
CSRF一般与XSS结合使用

2.用户登录受信任网站A,并在本地生成Cookie

3.攻击者伪装数据操作请求的恶意链接或者页面

恶意攻击者只要将伪装好的“数据修改或新增”的请求发送给被攻击者,或者通过社工的方式诱使被攻击者在其cookie还生效的情况下点击了此请求链接,即可触发CSRF漏洞,成功修改或新增当前用户的数据信息

4.诱使未登出用户主动访问或登录恶意链接,触发非法操作

当前用户在不知情的情况下,访问了黑客恶意构造的页面或在链接,即在非本意的情况下完成黑客想完成的“非法操作”,实现了对当前用户个人信息的恶意操作。

四、CSRF的类型

get类型和post类型

1.Get类型

Get指的是向某个地方获取一些数据,这个获取的过程可以理解为一个简单的查询,专业名词叫做“幂等”。幂等也就是能够随意多次执行。
get类型的CSRF是CSRF中最常见,危害最大,但也是最简单的一种类型了,只要一个http请求就可以了,这种类型的CSRF一般是由于程序员安全意识不强造成的。GET类型的CSRF利用非常简单,只需要一个HTTP请求,所以,一般会这样利用:
抓包获取请求修改html代码
在这里插入图片描述

复制url,写个简单的html文件

0元充值 ![在这里插入图片描述](https://img-blog.csdnimg.cn/890b6761d4cd4d04be5f2ffcfa42e4b5.png)

里面的请求数据可以随意改,然后扔给未登出用户点击即完成攻击
在这里插入图片描述

2.Post类型

post是希望服务器做某项操作,也就是不幂等。因为是设计成有影响的操作,所以它不能被缓存。post请求一般都是表单提交,可以在body里面携带数据。
$_REQUEST既可以获取GET请求的数据,也可以获取POST请求的数据;
一般会这样利用:
Bp抓包获取html请求代码,里面的请求数据可以随意改,把我们刚刚复制出来的referer粘贴在这个里面,然后使用Engagement tools-Generate CSRF POC,然后扔给未登出用户点击即完成攻击

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

3.Get+token

在这里插入图片描述

应对方法1:跟暴力破解绕过token的方式一样
新密码、确认新密码要设置一样的字典,Grep - Extract 通过正则提取返回信息中的内容
应对方法2:bp插件 下载完成后填一下host和name
在这里插入图片描述

五、CSRF实操

1.Pikachu靶场CSRF

a.CSRF(get) login

在这里插入图片描述

首先BP抓包获取请求代码
在这里插入图片描述

复制url,写个简单的csrf.html文件

0元充值 修改请求数据后给前端用户点击 ![在这里插入图片描述](https://img-blog.csdnimg.cn/fa49bc7f81c642248cb2c007f7923e11.png)

点击修改个人信息
用户编辑修改个人信息
在这里插入图片描述

BP抓包制作模仿链接
在这里插入图片描述

将数据提取出来
复制url,写个简单的csrf2.html文件,随意修改请求数据后给前端用户点击

csrf ![在这里插入图片描述](https://img-blog.csdnimg.cn/bf82f240bef64358aac4a033fb8da30d.png)

b.CSRF(post) login

在这里插入图片描述

先登录
在这里插入图片描述

点击修改个人信息
在这里插入图片描述

然后抓包制作模拟链接
在这里插入图片描述在这里插入图片描述

随意修改上面数据后保存成csrf-post.html给前端用户点击
在这里插入图片描述在这里插入图片描述

也是一样被篡改数据了

c.CSRF Token login

先登录
在这里插入图片描述在这里插入图片描述

点修改个人信息
在这里插入图片描述
抓包制作模拟链接,发现多了个token
在这里插入图片描述

但是发现要修改的参数太多,不是只是修改密码,不能用爆破的方法,因此这里使用插件CSRF Token Tracker实现
Extender–BApp Store–搜索CSRF Token Tracker–install
在这里插入图片描述

装完后主菜单会多出一个选项CSRF Token Tracker
CSRF Token Tracker–host填写127.0.0.1,Name填poc名称,勾选使用
在这里插入图片描述

然后抓包点send to repeater重放
在这里插入图片描述

可以修改下数据再点send
在这里插入图片描述

点Follow redirection后发现修改成功
在这里插入图片描述

重新登录验证下
在这里插入图片描述

说明也确实被修改成功了
但是发现这里有个问题就是只能重放一次,使用过后Follow redirection就不再出现了,需要重新再来,而且如果修改编码不对也不会出现Follow redirection

2.DVWA靶场CSRF

a.LOW

在这里插入图片描述

不知道是get还是post,先bp抓包再说
在这里插入图片描述

显然是get类型的
那就构造链接吧
复制url,写个简单的csrf3.html文件

0元充值 稍微改下它的密码,然后给前端点击 ![在这里插入图片描述](https://img-blog.csdnimg.cn/c060613b8ff24a09bab7d649bad7265e.png)

点击submit
在这里插入图片描述

然后我们登出使用该密码登录
发现确实修改成功了

b.Mid

登录抓包
在这里插入图片描述

替换链接打开
在这里插入图片描述

登出用新密码登录,也成功了,中级的怎么一样的

c.High

在这里插入图片描述

不出所料,高级的多了token
这次用爆破试下
在这里插入图片描述

使用鱼叉模式,用修改密码和token做变量
grep-extract加入找到的token

在这里插入图片描述

第二个字典类型选用Recursive gep,并将token黏贴在此处
在这里插入图片描述

使用单线程和一直重定向
在这里插入图片描述

开始爆破
在这里插入图片描述

其他情况
在这里插入图片描述

注意。爆破字典里要有我们修改的密码,如这里的password,否则会全部失败的

六、蓝莲花靶场搭建与使用

1.安装

a.将\BlueLotus_XSSReceiver-master*.*拷贝到pikachu www目录下

在这里插入图片描述

b.浏览器打开

http://127.0.0.1/BlueLotus_XSSReceiver-master/
在这里插入图片描述

c.点安装

可以改下密码,其他默认提交
在这里插入图片描述

d.登录即可

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

e.进入主页面添加数据

在这里插入图片描述

2.使用

a.打开DVWA LOW级别 反射型xss界面

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

b.蓝莲花创建”我的js”模块

在这里插入图片描述

使用默认模块,插入模版,website使用dvwa的当前测试xss界面地址,自定义文件名,最后点下面的新增

c.点击生成payload

在这里插入图片描述

复制生成的payload

d.执行payload

将复制的payload,放到dvwa的xss模块执行
在这里插入图片描述

e.蓝莲花打开接收面板

(需要重新拼接地址,先访问一下
http://127.0.0.1/BlueLotus_XSSReceiver-master/,
再访问http://127.0.0.1/BlueLotus_XSSReceiver-master/admin.php)
在这里插入图片描述

七、XSS在线平台

1.打开页面

https://xssaq.com/?callback=project&act=view&id=12637,登录账号和密码:poilkjmnb,QWE123
在这里插入图片描述

2.新建项目

在这里插入图片描述

点下一步

3.选择基础默认模块

在这里插入图片描述

点下一步
在这里插入图片描述

4.复制上面任意一条payload到DVWA里看效果

在这里插入图片描述

但是好奇怪的是我这里并没收到cookie

漏洞提交平台
漏洞盒子:https://www.vulbox.com/
补天:https://www.butian.net/
CNVD:https://www.cnvd.org.cn/
教育SRC:https://src.sjtu.edu.cn/

信息收集平台
https://fofa.info/
https://hunter.qianxin.com/
https://www.zoomeye.org/
https://www.shodan.io/
https://quake.360.net/quake/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值