Brute Force

 Brute Force

"Brute Force"(暴力破解)指的是一种通过尝试所有可能的组合来获取访问、解密或破解信息的攻击方法。这种攻击方法通常是基于暴力和不断尝试的,不依赖漏洞或弱点。通常用于破解密码、破坏系统或获取未经授权的访问权限。

Low

        界面如下:

Brute Force_第1张图片

        我们来看一下源码,这段代码使用了MD5进行密码哈希,极易破解。且将用户的输入($user $passwd)直接插入到SQL查询中

Brute Force_第2张图片

        随意输入,

Brute Force_第3张图片

        打开burpsuite进行抓包 

Brute Force_第4张图片

       

        可以看出账户、密码的内容都是以明文的方式进行传输。

        请求中的cookie包括“ PHPSESSID”未进行加密,且没有任何身份验证机制。

        所以我们可以进行各种用户名和密码的组合。

        接下来在bp的中Intruder,我们选中需要爆破的内容,然后添加(这里只选中passwd)

Brute Force_第5张图片

        我们加载一个txt文件,里面包含常见的弱口令 , 然后开始攻击

Brute Force_第6张图片

        在爆破完成之后,我们需要确定哪一个是真正的用户名和密码,此时会有一个payload的长度异于其他payload, 我们用这个进行验证

Brute Force_第7张图片

        

        验证 成功

Brute Force_第8张图片

Medium

        medium的源码相较于low,分别对用户名和密码进行查询,在登陆失败后会执行sleep(2)函数休眠两秒,在这两秒内无法继续再尝试登陆,

        和low中的操作相似,只不过等待时间会稍久一些。

Brute Force_第9张图片

High

       

        在high的等级中,相较于medium,除了sleep随机在0-3秒,重点在于增加了对令牌的验证

Brute Force_第10张图片

        所以我们要爆破的类型是交叉-多个payload集:可以指定多个有效载荷集合。每个有效载荷集合包含一组有效载荷,这些有效载荷将与其他集合中的有效载荷进行组合。

        内容是 密码 + token   将其添加payload   

Brute Force_第11张图片

        在开始之前,设置一下,便于我们的请求中提取到token,以便为每个密码找到对应的token

Brute Force_第12张图片

        在设置中的 检索-提取  > 添加 > 获取响应 双击value     记住这个值

Brute Force_第13张图片

        

         接下来设置载荷  第一个 (这里第一个载荷的设置和low中一样)

Brute Force_第14张图片

        第二个载荷设置 (这里的初始payload为之前的value的值)

Brute Force_第15张图片         

        递归提取载荷不能用多线程,我们将线程设置为1

Brute Force_第16张图片

        这个payload长度与其他不同, 

Brute Force_第17张图片

Brute Force_第18张图片

你可能感兴趣的:(DVWA学习篇,php,安全)