一、靶场搭建
>>>>
1、下载phpStudy工具
Windows:https://www.xp.cn/download.html
Linux:https://www.xp.cn/linux.html
>>>>
2、phpStudy安装
安装路径不能含有中文路径:
暴力爆破靶场搭建及爆破实验
>>>>
3、靶场环境搭建
打开phpStudy后先启动WNMP和Apatch:
暴力爆破靶场搭建及爆破实验
>>>>
4、创建网站
暴力爆破靶场搭建及爆破实验
>>>>
5、设置域名
注:记得导入web工程:
暴力爆破靶场搭建及爆破实验
创建成功提示:
暴力爆破靶场搭建及爆破实验
>>>>
6、在浏览器中访问靶场的域名
暴力爆破靶场搭建及爆破实验
OK,到此环境已搭建完成。
二、爆破实验
>>>>
1、简单登录方式爆破
暴力爆破靶场搭建及爆破实验
设置Burp监听功能
注:抓包前记得配置好相关代理。
将监听打开:Proxy->Intercept->Intercept is on (可以点击切换开关on为开 off为关)
暴力爆破靶场搭建及爆破实验
输入用户和密码点击登陆
右侧下面为该次请求的内容信息:
暴力爆破靶场搭建及爆破实验
POST /Loginl.php HTTP/1.1
Host: www.test
Content-Length: 26
Cache-Control: max-age=0
Origin: [url]http://www.test[/url]
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: [url]http://www.test/low.html[/url]
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Connection: close
name=admin&password=123456
准备入侵爆破
右键->Send to Intrude模块:
暴力爆破靶场搭建及爆破实验
爆破设置:
暴力爆破靶场搭建及爆破实验
Sniper:
这个模式会使用单一的payload【就是导入字典的payload】组。它会针对每个position中$$位置设置payload。这种攻击类型适合对常见漏洞中的请求参数单独地进行测试。攻击中的请求总数应该是position数量和payload数量的乘积。
Battering ram:
这一模式是使用单一的payload组。它会重复payload并且一次把所有相同的payload放入指定的位置中。这种攻击适合那种需要在请求中把相同的输入放到多个位置的情况。请求的总数是payload组中payload的总数。简单说就是一个playload字典同时应用到多个position中。
Pitchfork:
这一模式是使用多个payload组。对于定义的位置可以使用不同的payload组。攻击会同步迭代所有的payload组,把payload放入每个定义的位置中。比如:position中A处有a字典,B处有b字典,则a【1】将会对应b【1】进行attack处理,这种攻击类型非常适合那种不同位置中需要插入不同但相关的输入的情况。请求的数量应该是最小的payload组中的payload数量。
Cluster bomb:
这种模式会使用多个payload组。每个定义的位置中有不同的payload组。攻击会迭代每个payload组,每种payload组合都会被测试一遍。
比如:position中A处有a字典,B处有b字典,则两个字典将会循环搭配组合进行attack处理这种攻击适用于那种位置中需要不同且不相关或者未知的输入的攻击。攻击请求的总数是各payload组中payload数量的乘积。
在这由于不知道用户名和密码的情况下,我这边是选择Cluster bomd的方式进行爆破。
导入用户名与密码字典(注:字典的数据量能决定是否能爆破成功)
暴力爆破靶场搭建及爆破实验
暴力爆破靶场搭建及爆破实验
根据数据包分析看到的是数据没加密,所以这里不需要对用户名和密码进行加密。如遇到加密的话可以进行以下操作。
暴力爆破靶场搭建及爆破实验
进入到Options中配置后点击按钮开始爆破(此处参数为默认参数)
暴力爆破靶场搭建及爆破实验
爆破完毕。后筛选状态嘛以及回包的长度:
暴力爆破靶场搭建及爆破实验
爆破结果
登陆成功:
暴力爆破靶场搭建及爆破实验
登陆失败:
暴力爆破靶场搭建及爆破实验
那么可以确定用户名和密码分别为:admin和1q2w3e4r。
结果验证
此时可以先将Burp的监功能关闭。防止验证时抓包卡住。
暴力爆破靶场搭建及爆破实验
毫无问题登陆成功:
暴力爆破靶场搭建及爆破实验
>>>>
2、验证码复用爆破
抓包
暴力爆破靶场搭建及爆破实验
设置Intruder
由于该验证码可复用,所以不用设置为爆破项,仅对用户名和密码进行设置即可,后续操作步骤与第一个爆破试验一致。
暴力爆破靶场搭建及爆破实验
导入用户名和密码字典:
暴力爆破靶场搭建及爆破实验
暴力爆破靶场搭建及爆破实验
点击按钮开始爆破:
暴力爆破靶场搭建及爆破实验
爆破结果
暴力爆破靶场搭建及爆破实验
登陆验证
成功:
暴力爆破靶场搭建及爆破实验
>>>>
验证码刷新爆破
抓包
暴力爆破靶场搭建及爆破实验
设置Intruder规则
选择爆破用户名、密码、验证码:
暴力爆破靶场搭建及爆破实验
导入用户名、密码 字典:
暴力爆破靶场搭建及爆破实验
暴力爆破靶场搭建及爆破实验
设置验证码规则(0~9999 4位数):
暴力爆破靶场搭建及爆破实验
点击按钮开始爆破(估计需要1个月的时间):
暴力爆破靶场搭建及爆破实验
三、总结
1.密码不能设置太简单。
2.可以加上短信验证码。
3.页面验证码可变,有效时长缩短。
暴力爆破靶场搭建及爆破实验
- End -
|