Burpsuite密码爆破时绕过一次性csrf_token

背景:一个没有验证码的登陆页面,需要尝试进行弱密码爆破

        GET 方式请求 /gadmin/user 返回登陆表单页面,登陆表单页面中有一次性的csrf_token值

        POST方式请求/gadmin/user是进行登陆表单提交

实际页面见下图(ip地址我会进行篡改和隐藏,无视ip的变化即可)

提交表单时,正常返回状态码200;如果csrf_token非法,则会返回404状态码(见下图)

(注意上图的response,如果response页面是404,那么就不能在response中提取csrf_token,因为如果出现一次404,那么密码爆破流程就会出现问题(404页面没有csrf_token值),所以最佳的方法是POST提交表单前,先用get方式请求登陆页并从中提取csrf_token,因为get方式请求的页面基本不会出错)

---------------------------开始绕过csrf_token

原理: 让burpsuite在POST提交表单到/gadmin/user前,先GET方式访问/gadmin/user页面,提取页面最新的csrf_token值,保存到csrf_token变量中,再将csrf_token变量的值替换掉POST表达中的csrf_token值,完成一次合法的表单提交。循环执行。

-------------------------实际操作

1. 进入Macros, 开始创建宏

2. 选择需要获取数据的链接

我这里要在GET页面中获取新的csrf_token

3. 标定需要的数据值,并设置一个变量名

变量名要跟POST提交表单中的csrf_token参数名一致,我这里是csrf_token

4. 使用我们的宏

4.1 设置规则动作 Rule Actions

4.2 设置作用域 Scope

我的设置:只在Intruder和Repeater中有效

因为我设置了在Repeater中有效,所以我要在Repeater中测试(下图)

5. 执行Intruder爆破

注意要设置一个线程,否则会导致csrf_token不是最新

可以发现,response status 都是200 OK,每个请求的csrf_token也都是不一样的。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值