[ web基础篇 ] Burp Suite 爆破 Basic 认证密码
🍬 博主介绍
👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
文章目录
- 🍬 博主介绍
- 一、什么是Basic认证
- 1、Basic认证介绍
- 1.Basic认证简介
- 2.Basic认证优点
- 3.Basic认证缺点
- 2、Authorization头介绍
- 1.Basic认证
- 2.Authorization语法
- 二、Burp Suite爆破Basic认证密码
- 1、访问存在Basic认证的站点并抓包
- 1. 访问basic认证站点
- 2.抓包发现Authorization字段
- 3.验证Og==应该就是:(英文冒号)
- 2、导入爆破模块进行爆破
- 1.设置爆破点
- 2.设置payload
- 3.设置payload Processing
- 4.开始爆破
- 5.得到账号密码
- 3、成功登录站点
一、什么是Basic认证
1、Basic认证介绍
1.Basic认证简介
在HTTP中,基本认证(Basic access authentication)是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。
2.Basic认证优点
基本认证的一个优点是基本上所有流行的网页浏览器都支持基本认证。基本认证很少在可公开访问的互联网网站上使用,有时候会在小的私有系统中使用(如路由器网页管理接口)。后来的机制HTTP摘要认证是为替代基本认证而开发的,允许密钥以相对安全的方式在不安全的通道上传输。
程序员和系统管理员有时会在可信网络环境中使用基本认证,使用Telnet或其他明文网络协议工具手动地测试Web服务器。这是一个麻烦的过程,但是网络上传输的内容是人可读的,以便进行诊断。
3.Basic认证缺点
虽然基本认证非常容易实现,但该方案创建在以下的假设的基础上,即:客户端和服务器主机之间的连接是安全可信的。特别是,如果没有使用SSL/TLS这样的传输层安全的协议,那么以明文传输的密钥和口令很容易被拦截。该方案也同样没有对服务器返回的信息提供保护。
现存的浏览器保存认证信息直到标签页或浏览器被关闭,或者用户清除历史记录。HTTP没有为服务器提供一种方法指示客户端丢弃这些被缓存的密钥。这意味着服务器端在用户不关闭浏览器的情况下,并没有一种有效的方法来让用户注销。
2、Authorization头介绍
1.Basic认证
HTTP Request有时候会有Authorization头,这个头是用来向服务器发送认证用户的凭证的。
使用这个头时有几种不同的认证方式,Basic认证就是其中一种,其特征是:
用户名和密码之间以冒号相连。
对上一步中的字符串进行base64编码。
上面提到了Authorization头,那么Authorization头是什么呢
HTTP Authorization请求标头包含用于向服务器认证用户代理的凭证,通常在服务器响应401 Unauthorized状态和WWW-Authenticate标题后。
2.Authorization语法
Authorization:
认证类型。常见的类型是basic。
其他类型:
IANA 认证计划注册表
AWS 服务器身份验证(AWS4-HMAC-SHA256)
如果使用“Basic”身份验证方案,则凭证的构造方式如下所示:
用户名和密码与冒号(aladdin:opensesame)组合在一起。
生成的字符串是 base64 编码的(YWxhZGRpbjpvcGVuc2VzYW1l)。
举例
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
这里解释就看图把,以前学习的时候标注了颜色,这里就不标注了
二、Burp Suite爆破Basic认证密码
1、访问存在Basic认证的站点并抓包
1. 访问basic认证站点
2.抓包发现Authorization字段
Authorization: Basic Og==
我们看到这个字段可以确定是basic
格式Authorization: Basic base64编码
那Og==应该就是:(英文冒号)
3.验证Og==应该就是:(英文冒号)
Base64在线解码工具:
https://base64.us
2、导入爆破模块进行爆破
1.设置爆破点
把上图所示proxy模块抓到的报文send to intruder,将Authorization头中的Base64编码部分设置为爆破点,Attack type设置为Sniper
2.设置payload
设置payload,根据自己的需要就好
3.设置payload Processing
burp Suite爆破Basic认证密码重点就是设置payload Processing,也就是在用payload之前对它进行一些操作,后续我会有一个系列讲burp suite详细介绍这个功能,这里知道就好。
一定要注意顺序,先添加Add Prefix:admin: (用户名后面那个冒号一定不要忘)
再添加Base64-encode
另外由于base64编码之后可能有一些特殊符号,所以Payload Encoding中对特殊字符进行url编码的框框不要勾选
4.开始爆破
然后就开始爆破
5.得到账号密码
状态码(Status列)401是登录失败了,状态码200是登录成功了,如果payload特别多,可以按照Status排个序,然后找200的。
上一步中的爆破结果还是base64编码的,可以拿到在线解码工具里面解码,也可以直接在爆破结果中用快捷键Ctrl+Shift+B原地解码
解码得到账号密码都是admin
3、成功登录站点
输入账号密码进行basic认证,成功登录站点