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

相关推荐
温柔小胖6 小时前
sql注入之python脚本进行时间盲注和布尔盲注
数据库·sql·网络安全
网络安全筑盾者-燕子9 小时前
计算机网络-OSI七层参考模型与数据封装,网络安全零基础入门到精通实战教程!
网络·计算机网络·安全·web安全·网络安全·osi
hvinsion9 小时前
深入解析TLS协议:保障网络通信安全的关键技术
网络协议·安全·网络安全
网安Ruler11 小时前
泷羽Sec-黑客基础之html(超文本标记语言)
前端·学习·网络安全·html
仇辉攻防13 小时前
【云安全】云原生-Docker(六)Docker API 未授权访问
web安全·网络安全·docker·云原生·容器·kubernetes·安全威胁分析
浩浩测试一下17 小时前
NAT(网络地址转换)技术详解:网络安全渗透测试中的关键应用与防御策略
运维·服务器·安全·web安全·网络安全·系统安全·可信计算技术
星尘安全20 小时前
黑客利用 Telegram API 传播新的 Golang 后门
网络安全·黑客·漏洞·远控·后门
扎克begod21 小时前
Nacos Derby 远程命令执行漏洞修复建议
mysql·spring cloud·网络安全·微服务
顾比魁1 天前
XSS盲打:当攻击者“盲狙”管理员
前端·网络安全·xss
周先森的怣忈1 天前
智能选路+NAT实验
网络安全·hcie