0X01 前言
在WEB渗透中经常可以看到页面存在一次性token校验的情况,即请求包中包含token,而token值需通过其它页面获取,导致burpsuite抓包后无法重放。除了暴力破解,BurpSuite宏也可以用于其他测试,不过最终目的都是一致的,使我们更加快捷,专注于挖掘信息和渗透上,而不是在重复的工作中上浪费时间。 0X02 开始下面以一个简单例子来做个说明。目标网站如下,页面存在一个图片验证码,题目要求暴力破解得到账号密码。这题可以有多种方式实现,这里以burpsuite宏进行实验。
0X03 题目源码 暴力破解测试题目: https://github.com/3sNwgeek/BruteForc_test这些题目出自都是我平时工作渗透中遇到的各种各样的验证码问题而改成题目的。虽然题目是使用滑动验证码进行登陆的,但是实际上还是校验登陆session的。
1. 目标URL为:
http://1.1.1.1/c/hdyzma/welcome.php
,抓个包测试一下,发现其会对token
参数校验,拒绝重放的数据包。
2. 在登陆页面http://1.1.1.1/c/hdyzma/
可发现token
值:
3. 通过上面的发现,可以使用burpsuite
的宏功能自动把登陆页的token
值抓取出来填入登陆请求
1. 创建Macros
,获取token
值
2. 在Macro Recorder
中选择包含要获取的token
的页面
3. 配置Macros
用鼠标选中token
值,burpsuite
会自动填写开始标记以及结束标记,并且写上Parameter name
为token
,注意这里的参数名token
是与要爆破页面里的token
名称一致:
定义Macro
描述,方便区分:
1. 然后在Session Handling Rules
里面新建一条规则:
设置一个名字,这里叫update_token
:
选中刚刚录制好的宏,并且设置要更新的参数名,这里是token
:
2. 然后是设置宏的影响范围,因为我们只需要暴力破解账号密码,所以Tools Scope
这里只选中Repeater
、Intruder
就行了,其它模块可根据实际需要勾选:
1. 回到Repeater
,点击Go
重新发包,可以看到现在token
参数会自动刷新:
2. 使用Intruder
暴力破解账号密码:
因为多线程会同时刷新token
,导致部分请求包拿到的token
已经被刷新了,所以只能设置单线程跑:
成功暴破得到账号admin/123456a
使用BurpSuite宏获取CSRF-TOKEN,可以不断更新sessions值,使得保持有效的会话进行请求,非常方便。
别忘了投稿哦
大家有好的技术原创文章
欢迎投稿至邮箱:edu@heetian.com
合天会根据文章的时效、新颖、文笔、实用等多方面评判给予200元-800元不等的稿费哦
有才能的你快来投稿吧!
了解投稿详情点击——重金悬赏 | 合天原创投稿涨稿费啦!
点击“阅读全文”,注册学习