弱口令之暴力破解

2024-04-23 05:12
文章标签 暴力破解 口令

本文主要是介绍弱口令之暴力破解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前言

 弱口令与暴力破解介绍

漏洞挖掘实战专栏

个人介绍  

第一关:基于表单的暴力破解

绕过步骤

1.第一步抓包观察

2.使用burp的攻击模块

3.选择攻击模式以及爆破字典

​编辑 4.进行爆破

第二关 验证码绕过(on server)

绕过步骤

1.观察输入错误观察返回结果

2.输入正确观察返结果

3.进行发包测试

 4.重复发包测试

5.绕过验证码开始爆破

第三关 验证码绕过(on client)

绕过步骤 先观察

1.进行测试

​ 2.输入错误出现弹窗

3.进行验证推测

4.输入正确的验证码绕过

第四关 token防爆破?

绕过步骤

1.抓包进行观察

2.尝试重放

(1)直接重放

 (2)删除token进行重放

(3)观察返回页面进行分析

3.进行爆破配置

 总结


前言

        本来想在打靶场的同时结合实战案例放在一起进行分享,结果发现篇幅太长,也不利于看,就放在下一篇中结合着一起来看,当然我也会在下面的靶场中,写出具体的一些实战遇到的解释,

        为什么要着重来写这个,能用弱口令进入的页面是获得权限以及获取其他漏洞的最好方式了,实在没办法的话,采取其他战术.

 弱口令与暴力破解介绍

        弱口令是指容易被猜测或破解的密码,而爆破破解是一种通过穷举法尝试所有可能的密码组合以破解密码的方法

        弱口令通常指的是那些强度不高、容易被人猜到或者被破解工具所破解的密码。这类口令往往包含简单的数字和字母,例如“123”或“abc”,包括常见的生日日期、重复的数字和字母等。由于这些密码结构简单,没有混合使用大小写字母、数字及特殊字符,使得它们对渗透人员来说非常容易被识别和破解。 

         爆破破解则是一种基于穷举法的破解手段,它通过系统地尝试各种可能的密码组合直到找到正确的密码。这种方法对于人为设置的非随机密码尤为有效,因为人为设置的密码往往有一定的规律性,可以通过预设的密码字典或彩虹表来缩短破解所需的时间。在Web应用中,暴力破解常用于对应用系统的认证信息进行获取,渗透测试人员会使用大量认证信息尝试登录,直到得到正确的结果。为了提高效率,通常会使用自动化工具进行操作。

漏洞挖掘实战专栏

漏洞挖掘实战icon-default.png?t=N7T8http://t.csdnimg.cn/nU21v

个人介绍  

                                                       本人的小介绍,大佬勿喷

                                                      不知名普通本科院校

                                                     软件大二入坑网络安全

                                                  刚入坑教育SRC不到两个月

                                获得过两张985,211的漏报送证书,和一张教育部的证书

                                        参加过多个渗透实战项目,并取得不错的成绩

                                     获得过CNVD原创事件型漏洞证书,多个cnvd编号           

第一关:基于表单的暴力破解

        最常见的登录界面,使用弱口令失败,一般会采用爆破密码的方式,当然也会辅助性的结合逻辑漏洞,这个后面碰到再说

绕过步骤

1.第一步抓包观察

      先随便输入一个用户名和密码观察回显,然后再随便输入后,进行抓包,注意查看返回的提示.

        在实战中,一会出现和下面的提示一样的文字一般是红色,或者是弹窗一样的东西.下面提示账号或密码不存在. 

2.使用burp的攻击模块

然后将抓到的包发送的攻击模块,并将账号密码分别增加载荷

 

3.选择攻击模式以及爆破字典

        然后Attack Type选择Cluster bomb,这里我们需要进行账号密码的爆破,所以我们需要对两个参数进行palyload设置,然后选择设置是狙击手,也就是简单列表.然后我分别对两个参数进行字典的设置(选择字典导入或是复制字典,进行粘贴),然后开始

 4.进行爆破

这里因为用大字典跑的话,比较费时间,我就将提示里的账号密码放入到我自己构造的小字典中了.

 这里也是爆破出两个,其中提示给出了三个用户,我手动验证了一下发现有一个用户其实是错误的.

第二关 验证码绕过(on server)

绕过步骤

        这里就涉及到逻辑部分的漏洞了,因为开发人员的开发失误在爆破中我们常会通过逻辑漏洞辅助我们进行弱口令爆破

1.观察输入错误观察返回结果

        观察页面一般验证码做的很随意,就可以考虑,当然也会存在像若依的那样的有明显判别方式的验证码,可以尝试若依的弱口令或是其他方式进行测试了.

        首先观察一下,用户名和密码输入错误值,当验证码是错误值时,返回结果如下,提示验证码错误.

2.输入正确观察返结果

用户名和密码输入错误值,当验证码是正确值时,返回结果如下,提示用户名或密码不存在

3.进行发包测试

                                            把刚刚试的随便一个包send to repeater

 4.重复发包测试

      改成当前网页显示的验证码,send,发现response中提示的是用户名或密码不存在,说明验证码是对的.

5.绕过验证码开始爆破

      这就说明之前的猜想是正确的,只要网页没刷新,验证码在burp suite中可以多次使用,直接从repeater中把上图的请求包send to intruder,和上一关一样配置intruder

还是这两个用户可以进行登陆.

第三关 验证码绕过(on client)

绕过步骤 先观察

1.进行测试

用户名和密码输入错误值,当验证码是正确值时,返回结果如下,提示用户名或密码不存在

 2.输入错误出现弹窗

   这种也是在实站中常会出现的一种验证,但是发现这个一般是前端验证的可能性是非常大的.

      用户名和密码输入错误值,当验证码是错误值时,有弹框提示验证码错误,之前对用户名或密码的提示也没有清除.

3.进行验证推测

      那根据上面两张图,特别是验证码错误时有弹框这点,我怀疑用户名和密码是在后端验证的,但验证码是在前端验证的。右键检查页面的原代码,发现验证码的验证是从前端进行验证的,当然这里也可以将burp的抓包进行打开,如果输入错误的验证码后提交没有抓到包,那么证明是进行了前端验证,没有经过服务器.

4.输入正确的验证码绕过

      既然是前端检测,那直接用burpsuite发请求报文绕过前端就可以了,是前端验证,那么我们只需要输入正确的验证码,就可以抓到包了,burpsuite的proxy模块抓到的这个报文send to intruder.也可在burp中设置丢掉js或是在浏览器中禁用js就可以了,绕过了 

                        然后,我们进行上面第一关的操作,这里还是这两个用户可以进行登录

第四关 token防爆破?

绕过步骤

     这个目前在我测试的网站中,遇到过比较少了,基本存在token的都在一些接口处,现在的网站多使用cookie以及session进行验证了,基本就是进行爆破次数限制只能爆破5次. 

1.抓包进行观察

      首先还是观察~这关没有验证码了,用户名或者密码输错会提示用户名或密码不存在

 

      抓包后出现token那既然和token有关,我们用不一样的值login两次看看burpsuite抓到的报文有啥区别?把proxy模块抓到的两次登录的报文send to comparer对比一下,确实两次的token不一样,把proxy模块抓到的报文send to repeater,操作操作,观察一下有什么办法突破:

2.尝试重放

(1)直接重放

                    先尝试不改动token,直接重放,response中提示 csrf token error

 

 (2)删除token进行重放

                                 尝试删除token,response中什么返回结果都没有

(3)观察返回页面进行分析

      虽然前面两条路死了,但是尝试的时候发现response中网页源代码有一个type为hidden,name为token的input标签,value和request报文的token不一样,应该是下一个报文的token。那试一下把request中的token值改为response中的token值,再次send,返回了提示用户名或密码不存在,并且返回了下一次的token值

 

3.进行爆破配置

        根据以上结果,下一次request需要携带的token就是上一次response中html代码中的隐藏字段值,也就是说request中的token是可以从上一个response中提取的,那么还是可以暴力破解,只不过配置稍微复杂一点:

      首先position除了username和password再增加token,此外要注意Attack type选Pitchfork(payload一一对应,数量为最少的payload的数量)。.这里为啥要选Pitchfork而不能选Cluster bomb,尝试一下就知道了

      由于前面使用的用户名和密码payload列表都是适用于Cluster bomb的,而Pitchfork对payload的要求可能更高一些(需要提前整理好对应关系),我这里并没有把用户名和密码payload列表进行更改,不过通过这种方式确实实现了攻击。

        前两个payload就按照第一关进行配置,第三个payload type设置为Recursive grep

                        上图这个payload options是在哪里设置的呢?就是下图这里  

      确认上面这个设置之前我觉得保险起见应该在网页源代码里面观察一下有多少符合正则表达式的位置,从下图来看就这一个地方符合,那就妥了

      此外还有一个需要注意的地方是线程要设置为1,这是因为每次都要用上次response中返回的token,多线程就会乱套了。  

     可以发现有每次的token都不同,不过也证明了只要字典够大确实token也并不会影响爆破  

 总结

  是对自己在进行大量渗透测试后,返回来进行复盘,同时也能更好的辅助自己能够扩展更多的渗透思路,也也能对自己的之前的方法进行复习,个人比较喜欢复盘,每次都能够获得新的思考和感悟.

这篇关于弱口令之暴力破解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/927868

相关文章

HTB-lgnition(curl工具、yakit、 弱口令)

前言 各位师傅大家好,我是qmx_07,今天来讲解lgnition靶机 渗透流程 信息搜集 服务器开放了80 http端口 curl工具 介绍:curl工具是一个用于发送HTTP请求的命令行工具。它支持多种协议,包括HTTP、HTTPS、FTP、SMTP等,并且支持各种常见的操作,如GET、POST、PUT、DELETE等。 -v显示输出与请求和响应相关的详细信息,包括请求头

基于Fail2Ban入侵防御软件预防通过ssh暴力破解

1. Fail2Ban入侵防御软件介绍 Fail2Ban是一款开源的入侵防御软件,它通过自动分析系统日志文件来识别恶意的登录尝试(如暴力破解攻击),并能够动态更新防火墙(iptables)规则来暂时禁止这些攻击源的IP地址。Fail2Ban使用Python编写,能够在支持POSIX的系统上运行,如Linux和其他类Unix系统。它支持多种服务,如SSH、Apache、mysql、nginx、FT

SSH弱口令爆破服务器

一、实验背景 1、概述 使用kali的hydra进行ssh弱口令爆破,获得服务器的用户名和口令,通过 ssh远程登录服务器。 2、实验环境 kali攻击机:192.168.1.107 centos服务器:192.168.1.105 二、前置知识 1、centos设置用户并设置弱口令 centos查看用户名 cat /etc/passwd centos查看密码cat /etc/sha

【第79课】服务攻防-中间件安全IISApacheTomcatNginx弱口令错误配置CVE

免责声明 本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。 如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。 文中所涉及的技术、思路及工具等相关知识仅供安全为目的的学习使用,任何人不得将其应用于非法用途及盈利等目的,间接使用文章中的任何工具

Linux系统安全--弱口令检测 John the Ripper

1、下载 John the Ripper  [root@VM_0_11_centos Jone]# rm -rf *.tar.gz[root@VM_0_11_centos Jone]# wget http://www.openwall.com/john/j/john-1.8.0.tar.gz--2020-01-14 09:50:54-- http://www.openwall.com/jo

132-横向移动-Exchange 服务有账户 CVE 漏洞无账户口令爆破

Exchange服务         Microsoft Exchange Server 是微软公司推出的一款企业级邮件服务器软件,它提供了一套全面的电子邮件服务组件,以及消息和协作系统。Exchange Server 不仅支持电子邮件服务,还提供了日历、联系人管理、任务管理、文档管理、实时会议和工作流等丰富的协作应用。这些功能可以通过Internet浏览器访问,使得用户可以轻松地在不同的设备上

web中间件漏洞-Jenkins漏洞-弱口令、反弹shell

web中间件漏洞-Jenkins漏洞-弱口令、反弹shell Jenkins弱口令 默认用户一般为jenkins/jenkins 使用admin/admin123登陆成功 Jenkins反弹shell 格式为 println"命令".execute().text 在/tmp目录中生成shell.sh文件,并向其中写入反弹shell的语句 new File(“/tmp/shell

对称加密算法之基于口令加密——PBE

PBE算法 1. 算法简述2.模型分析3. 代码实现3.1 算法实现3.2 测试代码3.3 运行结果 1. 算法简述 PBE(Password Based Encryption, 基于口令加密)算法是一种基于口令的加密算法。 PBE算法综合了多种对称加密和消息摘要算法的优势,形成了对称加密算法的一个特例。 PBE特点在于口令由用户掌管,采用随机数(也叫盐Salt)杂凑多重加

记一次护网通过外网弱口令一路到内网

文章中涉及的敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打码处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行承担! 一次教育专题的护网,因为是教育专题,所以靶标都是学校或者教育局,学校嘛,外网是挺难找到口子的,但是找到口子内网就很脆弱了。所以就是要想

万能破题方法包(3)暴力破解法

一、前言      暴力破解法是指通过尝试所有可能的密码组合来破解密码 1.1、概念        暴力破解法是一种通过尝试所有可能的密码组合来破解密码的方法。它基于暴力的方式,不依赖于任何密码漏洞或特殊技巧,而是通过穷举所有可能性来找到正确的密码。 1.2、解决步骤  确定密码长度和字符集:首先需要确定密码的长度和字符集,包括可能包含的字母、数字、特殊字符等。这有助于缩