当前位置: 首页 > article >正文

pikachu - 暴力破解

pikachu - 暴力破解

声明!

笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人无关,切勿触碰法律底线,否则后果自负!!!!

题记

Burte Force(暴力破解)概述“暴力破解”是一攻击具手段,在web攻击中,一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。 为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作。

理论上来说,大多数系统都是可以被暴力破解的,只要攻击者有足够强大的计算能力和时间,所以断定一个系统是否存在暴力破解漏洞,其条件也不是绝对的。 我们说一个web应用系统存在暴力破解漏洞,一般是指该web应用系统没有采用或者采用了比较弱的认证安全策略,导致其被暴力破解的“可能性”变的比较高。 这里的认证安全策略, 包括:

1.是否要求用户设置复杂的密码;
2.是否每次认证都使用安全的验证码(想想你买火车票时输的验证码~)或者手机otp;
3.是否对尝试登录的行为进行判断和限制(如:连续5次错误登录,进行账号锁定或IP地址锁定等);
4.是否采用了双因素认证;

…等等。

千万不要小看暴力破解漏洞,往往这种简单粗暴的攻击方式带来的效果是超出预期的!

你可以通过“BurteForce”对应的测试栏目,来进一步的了解该漏洞。

从来没有哪个时代的黑客像今天一样热衷于猜解密码 —奥斯特洛夫斯基


前言

对于暴力破解而言,我们需要准备好字典。什么是字典?对于从事网络安全的人员来说,字典就是包含常用字词、短语和数字组合的列表。它不会像新华字典那样为你详细的解释字词的含义,但是它包含了常见的或不常见的(通常为根据某人、某事、某地特别制定的)一些字词、短语或者数字的组合或非组合(全为数字或者全为字词等)。

字典被尝试用来匹配目标的账号及口令,来完成自己的目的。这种攻击方法之所以有效,是因为很多人使用简单、明显的密码,如连续按键(如“123456”和“qwerty”)或常见短语(如“Password”和“iloveyou”)。一旦字典式攻击成功入侵了一个账户,黑客可以利用该账户访问银行账户、社交媒体和个人资料,甚至受密码保护的文件,从而获取敏感信息或进行欺诈活动‌。

基于表单的暴力破解

在这里插入图片描述

第一道题目,基于表单的暴力破解。这个登录没有验证码,也没有限制登录次数,我们可以制作两本字典,来分别匹配账号和密码,字典在网上可以搜到许多常用的字典,这里我就不再给出。
在这里插入图片描述
我们随便输入一个账号密码,然后使用Burp抓到该数据包,而后发送至攻击器,对账号和密码进行标记,将攻击类型更改为集束炸弹

在这里插入图片描述
在这里插入图片描述

​​更改完攻击类型后,我们切换到payload,然后选择根据自己的目标来选择字典,选好字典后点击开始攻击
在这里插入图片描述

可以预见的是,集束炸弹这种攻击类型,账号字典使用了228条,密码字典用了63条,爆破次数却高达5W+次,速度比其他三个攻击类型要慢上许多。不过我们最终还是得到了4个长度与其他数据包长度不同的数据包,但是由于有两个数据包是一致的,所以只能算是3个数据包,让我们查看一下是否爆破成功。
在这里插入图片描述

很明显,这三个数据包确实是正确的账号密码

验证码绕过(on server)

在这里插入图片描述

这一题比起上一题多了一个验证码,相当于上一个版本的加固版本,但是加了验证码就能防止爆破了吗?让我们来尝试一下。

我们首先对登录表单进行抓包,然后发至重放,可以发现,验证码并不会随着发送次数的变化而变化,而是固定的!

在这里插入图片描述

那么,我们可以输入一次正确的验证码,并发送至攻击器,像之前那样指定字典来进行爆破。

在这里插入图片描述

可以看到,攻击器已成功将三个账号密码准备爆破出来

验证码绕过(on client)

这一次的登录表单依然使用了验证码,不同于上一个验证码绕过靶场是从服务器对验证码进行验证,这一次是在客户端进行了验证,但这真能防得住吗?

我们发送至重放器试试,结果依然表明,它不会随着重放次数的增加而改变验证码,所以我们依然输入一次正确的验证码,然后对其抓包,并进行爆破。
在这里插入图片描述

可以看到,三个账号都成功爆破出来。

token防爆破?

这个是对防爆破的再一次升级,但是,加上csrf-token,就真的安全了吗?

我们依然尝试重放看看
在这里插入图片描述

结果表明,由于有token值的存在,数据包在发送过一次之后,第二次就会失效,显示csrf token error,看起来我们对它没有办法了。

但真的是这样吗?让我们往下看。

我们首先按F12查看一下源码,可以发现token值其实在页面中可以找到

在这里插入图片描述
那么我们就可以在攻击器中将token值设置标签
在这里插入图片描述
需要注意的是,使用这种方式,要么能够确定账号,要么能够确定密码,然后使用交叉来进行爆破,否则你需要一台性能特别强的服务器,而且失败的概率会特别大。

第一个集我们指定密码字典,第二个集选择递归提取
在这里插入图片描述
在这里插入图片描述
然后选择选项-Grep - Extract进行提取,可以在搜索栏中填上value更快搜索到,然后用鼠标选中token值,这样burp就会自动生成正则表达式
在这里插入图片描述
之后我们依然在选项这边,拉到重定向的位置,选择总是

在这里插入图片描述

回到payload集,填上数据包中的token值
在这里插入图片描述

选择资源池-新建资源池-最大并发数:1,并点击开始攻击

在这里插入图片描述
在这里插入图片描述

可以看到,已经将密码爆破成功。

结语

在当今社会,账号密码的重要性越来越明显,我们访问大多数的网站都需要一个账号密码,那么在网站所有者(服务器端)没有对爆破攻击进行严格限制的情况下,我们该怎么保证我们的密码安全?

小编在这里给出一种易记又安全的方法,就是随机找一首歌的歌词,将里边的某一部分截取,比如黎明的歌曲《我的亲爱》中,有这么一段歌词:如忙忙匆匆的爱才现代便可以提取出字母,rmmCCDACxD,然后自己可以定哪个字母之前的用大写,哪个之后的用小写,最后加上一些数字和特殊符号,一个难以爆破的密码便诞生了:rmm@CCDACxD114514


http://www.kler.cn/a/467430.html

相关文章:

  • 使用 `llama_index` 构建智能问答系统:多种文档切片方法的评估
  • 在 .Net 8.0 中使用 AJAX 在 ASP.NET Core MVC 中上传文件
  • [paddle] 非线性拟合问题的训练
  • CSS 之 position 定位属性详解
  • 【网络协议】IPv4 地址分配 - 第一部分
  • 【跟着官网学技术系列之MySQL】第2天之MySQL版本:创新和 LTS
  • AI时代的在线教育系统:源码如何赋能智能学习平台
  • 【C++动态规划】983. 最低票价|1786
  • 求第n个12345排列数
  • TSN 时隙调度思辨:从广域网症结到网络中立权衡
  • USB射频微波功率计的功能与优势-盛铂科技
  • lenovo联想IdeaPad 15sIML 2020款(81WB)笔记本电脑原装出厂OEM预装系统Windows10镜像下载
  • c++第14课(入门结束)
  • 微信小程序中 “页面” 和 “非页面” 的区别
  • mysql入门篇
  • 网络安全抓包
  • 【制造业】大数据一站式解决方案
  • SQL 分析函数与聚合函数的组合应用
  • Spring Boot - 日志功能深度解析与实践指南
  • 代理IP助力VR行业革新,小派科技引领技术潮流
  • C语言(自定义)函数
  • LeetCode 力扣 热题 100道(二十八)矩阵置零(C++)
  • ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
  • L27.【LeetCode笔记】2 的幂(五种解法)
  • 1.C语言教程:历史、特点、版本与入门示例
  • Tableau数据可视化与仪表盘搭建-安装教程