DVWA-CSRF

LOW等级:

首先进行正常操作。

接下来打开burpsuit抓包

如图所示,将password参数test改为password:

退出DVWA用刚刚修改的密码成功登陆:

由此可知,这个数据包发送给其他用户,只要该用户登陆了DVWA的网站,就能修改他们的密码,攻击者只要修改password_new和password_conf这两个参数为自己想要的密码,将新的get请求的数据包写成链接的形式发送给受害者,希望受害者点击,但是如果我们看到这样的链接通常是不会点的,所以我们要伪造,将这个链接重新包装。

如下图所示构造html表单,将构造好的.html文件放到网站根目录下,发送链接给受害者,受害者访问后点击后相当于发送数据包给DVWA网站。

如图所示访问链接点击click me 密码成功改为hacker。

 

Medium等级:

使用Low等级的方法密码修改失败:

接下来抓包进行分析:如图所示上面是medium等级手工输入修改密码的数据包,下面是用Low等级中的方法发送的数据包,现在一个成功的数据包一个失败的数据包进行对比,观察请求包头部信息,发现refer这一行不同,接下来对失败的数据包的refer进行修改再提交。

如上图所示,首先使用之前对比的正确的数据包的refer 进行发包,成功修改密码。

 

 

然后将refer中域名后面的目录都去掉进行发包,发现同样正确修改密码。

将refer修改成本地ip,同样成功修改密码。

所以得出结论,refer只要包含host就可成功修改密码。

思考Medium等级攻击失败的原因:关键是在构造的链接上,因为refer总是和构造的链接一样,要让链接包含DVWA的host字段,而前面的127.0.0.1无法改变,所以在网站根目录下构造一个与host相同的文件夹,将构造的html文件放到该该文件夹下,这样refer就包含了host字段。

如图所示,访问新的链接,跳转到DVWA的页面,密码成功修改。

High等级:

对比发现medium等级的数据包比high等级的数据包,发现high的数据包多了user_token参数,它是来自上一个响应包中,而且每次修改密码,它都是变化的,所以使用low和medium 方法都没有办法利用了,需要结合XSS漏洞获取页面中的user_token参数,进行CSRF攻击

注:user_token和CSRF_token这一类随机变化的参数就是为了防止CSRF攻击的,它保证了攻击者无法猜测到所有的参数,统称为CSRF token

漏洞修复:

校验refer(这里的medium等级采用的校验refer,但没有校验完全,知校验了是否包含域名,存在绕过)

随机token (hige等级的防御方法)

验证码(牺牲了用户体验,防护CSRF攻击)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值