CSRF靶场练习

简述:CSRF漏洞实际很少;条件限制很多;局限性很大;实验仅供参考,熟悉csrf概念和攻击原理即可

Pikachu靶场

CSRF GET

登录用户vince的账户可以看到用户的相关信息;

CSRF靶场练习_第1张图片

点击修改个人信息,发现数据包里除了cookie没有任何其他验证信息

CSRF靶场练习_第2张图片

通过右键Engagement tools选项找到生成csrf poc

CSRF靶场练习_第3张图片

将生成的poc复制放到html文件然后打开;或者直接选择test in browser

注意:这里的payload是通过表单进行提交的;GET请求时也可以直接构造链接进行诱导

iphone14抽奖立减3000元

CSRF靶场练习_第4张图片

打开的页面如下;只有一个确认按钮;剩下的选项被隐藏了;一旦点击就会是用户信息都改为123

CSRF靶场练习_第5张图片

CSRF靶场练习_第6张图片

CSRF POST

同上;登录allen的账号

CSRF靶场练习_第7张图片

同样抓取修改信息的数据构造csrf poc

CSRF靶场练习_第8张图片

CSRF靶场练习_第9张图片

同样的访问csrf页面,点击按钮

CSRF靶场练习_第10张图片

点击后发现用户信息都被修改了

CSRF靶场练习_第11张图片

CSRF token

这关加了token验证;普通流程过不去

登录kobe账户;发现时GET方法;但是增加了token验证;每次请求token值都不同;由服务器随机分配的

CSRF靶场练习_第12张图片

同样的利用bp生成poc

CSRF靶场练习_第13张图片

访问链接

CSRF靶场练习_第14张图片

点击恶意链接,发现用户信息并未被修改;这是因为token验证失败的结果;

这说明对于CSRF攻击token验证就可以做到完美防御

CSRF靶场练习_第15张图片

绕过思路:可以利用bp插件绕过;下载csrf token trace插件

仅供实验参考;实际不可用;由于浏览器设置了bp作为代理;所以能实现绕过

bp下载对应插件

CSRF靶场练习_第16张图片

下载完成后对插件进行设置

CSRF靶场练习_第17张图片

此时在点击恶意链接发现用户信息被修改了;这说明该插件在请求发送之前获取了服务器的token值并对请求进行了替换

CSRF靶场练习_第18张图片

DVWA 靶场 CSRF

LOW

登录网站;点击修改密码;bp抓包;发现没什么其他验证;GET方法+cookie

CSRF靶场练习_第19张图片

通过右键工具生成csrf poc

CSRF靶场练习_第20张图片

测试poc

CSRF靶场练习_第21张图片

CSRF靶场练习_第22张图片

通过浏览器登录验证;发现密码确实被修改为了123

CSRF靶场练习_第23张图片

Medium

同样的方法;修改密码;抓包查看数据;发现跟LOW一样

CSRF靶场练习_第24张图片

获取csrf poc;

CSRF靶场练习_第25张图片

点击链接

CSRF靶场练习_第26张图片

跳转之后发现;密码未修改成功;后端进行验证了;推测时referer字段验证(只有这一个不稳定参数)

CSRF靶场练习_第27张图片

通过修改referer字段的数据验证了服务器确实检测了该字段;只允许之前访问域名中有该域名信息的链接访问;防止恶意链接跳转访问

CSRF靶场练习_第28张图片

CSRF靶场练习_第29张图片

解决方法:

1.将文件名改成目标ip地址或者域名

2.将文件放到含有目标ip地址/域名的文件夹下

3.创建一个网站域名包含目标站点的域名;然后把文件放到该网站根目录下即可

方法1和方法2可能不成功;因为referer字段有时候不包含文件名(可能是浏览器设置或者网站安全策略的问题);如果只得到实验结果的话可以手动对referer进行修改

方法3是可以实现的;

通过小皮创建一个dvwa123的网站;因为我把dvwa网站的域名设为dvwa了;新建的域名包含目标网站的域名,将生成的poc文件放到该网站根目录下

再次访问对应的链接,通过抓包发现referer是不包含文件名的;

但是密码被修改了

CSRF靶场练习_第30张图片

CSRF靶场练习_第31张图片

CSRF靶场练习_第32张图片

High

这关使用token验证;不再验证referer字段

CSRF靶场练习_第33张图片

使用插件绕过;设置插件配置用于获取和替换目标网站的token

CSRF靶场练习_第34张图片

配置完成后直接访问poc链接;发现页面跳转了,但是没有任何提示;通过登录验证发现密码已经修改了

CSRF靶场练习_第35张图片

总结

从这几个案例中可以了解csrf的原理和危害已经防御方法

条件:同一浏览器+同时打开至少两个网站+保持登录其中一个存在csrf漏洞的网站并在另一个网站中访问了刚好针对该登录网站的恶意链接

危害:个人数据被修改;资产消失等;现实这种漏洞实现条件苛刻,了解就行

防御方法:token验证,验证码,浏览器同源策略,增加输入原始密码的选项(自定义验证字段)等

10

你可能感兴趣的:(csrf,前端)