知识点:
1、Web攻防-CSRF-原理&检测&利用&防御
2、Web攻防-CSRF-防御-Referer策略隐患
3、Web攻防-CSRF-防御-Token校验策略隐患
一、演示案例-WEB攻防-CSRF利用-原理&构造



CSRF 测试功能点
删除帐户
更改电子邮件
如果不需要旧密码,请更改密码
如果您的目标支持角色,请添加新管理员
更改正常信息,名字,姓氏等......
类似复选框的接收通知
更改个人资料图片/删除它
案例-CSRF利用-无防护
检测:黑盒手工利用测试,白盒看代码检验(有无token,来源检验等)


生成:BurpSuite->Engagement tools->Generate CSRF Poc



利用:将文件放置自己的站点下,诱使受害者访问(或配合XSS触发访问)




二、演示案例-WEB攻防-CSRF防御-同源策略

就是判断Referer这个值是不是同一个域名或者IP下

案例-CSRF利用-同源策略防护









referrer:http://xx.xx.xx.xx/http://xx.xx.xx.xx



从实战场景来讲是没法操作受害者浏览器改数据包的,所以可以用如下方法绕过:
绕过1:规则匹配绕过问题(代码逻辑不严谨)
置空来源:<meta name="referrer" content="no-referrer">


绕过2:配合文件上传绕过(严谨使用同源绕过)
绕过3:配合存储XSS绕过(严谨使用同源绕过)
三、演示案例-WEB攻防-CSRF防御-Token

token(令牌,也可以理解为暗号,在数据传输之前,要先进行暗号的核对,暗号不一致则拒绝数据传输)
CSRF_token 对关键操作增加Token参数,token必须随机,每次都不一样,存储在cookie中,与验证码一样。
案例-CSRF利用-Token校验防护









绕过1:将Token参数值复用(代码逻辑不严谨)能够重复使用token
绕过2:将Token参数删除(代码逻辑不严谨)把token整个参数值删掉


绕过3:将Token参数值置空(代码逻辑不严谨)把token的值删掉,保留token=
