Bootstrap

网络安全之暴力破解

一、暴力破解原理

暴力破解也称为字典攻击,通常被用于攻击网站的用户账户名/密码。使用自动化脚本以枚举的方式尝试所有可能的用户名或密码组合。

通过攻击用户的账户名和密码,窃取用户个人信息或获取网站管理权限等。

暴力破解也被称为枚举测试、穷举法测试,就是将每个可能的结果逐个比较,直到找出正确的结果为止。

image.png

【一一帮助安全学习,所有资源获取处一一】

①网络安全学习路线

②20份渗透测试电子书

③安全攻防357页笔记

④50份安全攻防面试指南

⑤安全红队渗透工具包

⑥网络安全必备书籍

⑦100个漏洞实战案例

⑧安全大厂内部视频资源

⑨历年CTF夺旗赛题解析

二、工具

Brup Suite Professional抓包工具

三、靶场练习

1、基于表单的暴力破解

企业微信截图_16963153764854.png

step1:抓包

登录靶场,打开抓包工具,注意将浏览器的Burp代理打开。随意输入账号和密码进行抓包

企业微信截图_16962317334087.png

step2:设置爆破条件

  • 右键send to intruder
  • 设置攻击类型:由于我们不知道每个账号对应的密码是多少,所以这里的攻击类型选择Cluster bomb
  • 设置攻击点:这里涉及到两个变量username和password,将两个变量的值进行高亮处理

企业微信截图_1696315902134.png

  • 在Payload中设置对应字典:考虑到密码可能为空的情况,设置时,可以加入空

企业微信截图_16963160633346.png

企业微信截图_16963162259172.png

step3:开始暴破

企业微信截图_16963163074037.png

step4:查看攻击成果

由于验证正确和验证错误所返回的response长度不一样所以可以进行length排序快速找出正确的用户名和密码

企业微信截图_16962345038993.png

2、验证码绕过(on server)

企业微信截图_16963167249685.png

step1:测试

还是按上一关第一步来输入用户名和密码加一个验证码,这时候会有两种出错提示分别是:

image.png

image.png

  • 验证顺序: 先验证验证码是否正确,错误提示验证码错误,正确进一步验证用户和密码如果用户或密码错误则会提示上述第一张图片内容

step2:利用burp抓包并分析

  • 开始时,依旧随便输入值

企业微信截图_16963169431791.png 这次比上次多一个vcode,返回错误后,验证码刷新就不能再按之前的方式暴力破解了

  • 使用Repeater(中继器)查看更改账号或密码后验证码是否发生变化

企业微信截图_16963200302445.png 改变密码后重新查看

企业微信截图_16963200583996.png 可以发现,在改变密码后,验证码并没有发生变化。 所以,我们只需要输入正确的验证码,按照之前表单的暴力破解方法进行破解。

step3:按照上述分析,账号密码随便填写,正确输入验证码,并使用Burp进行抓包

企业微信截图_16963206022164.png

企业微信截图_16963206722913.png

step4:设置爆破条件

  • 右键send to intruder
  • 设置攻击类型:由于我们不知道每个账号对应的密码是多少,所以这里的攻击类型选择Cluster bomb
  • 设置攻击点:这里涉及到两个变量username和password,将两个变量的值进行高亮处理

企业微信截图_16963208369605.png 在Payload中设置对应字典:考虑到密码可能为空的情况,设置时,可以加入空

企业微信截图_16963160633346.png

企业微信截图_16963162259172.png

step5:开始攻击并查看结果

按照上面讲述的方法判断结果

企业微信截图_16963210844454.png

3、验证码绕过(on client)

企业微信截图_16963212555583.png

step1:测试,了解基本情况

  • 随便输入,这里验证码也是错误的

企业微信截图_16963235031093.png

  • 使用burp抓包,进一步分析 在查找历史抓包记录的时候,发现没有相应记录

企业微信截图_16963235916220.png 不管是点击更新验证码,还是提交错误的验证码,浏览器都不会发送请求给服务器。 通过输入正确的验证码才发现POST到服务器

  • 输入正确的验证码

企业微信截图_16963240731898.png 服务器没有发送和接受任何数据,但是验证码又验证了,只能说明这个验证码是本地产生和验证的。

企业微信截图_16963242135715.png

  • 尝试页面F12查看源代码,果然找到了一段JS代码。

image.png bf_client.php的这段代码,表明验证码是本地生成并验证的。只有验证码对了,才会POST到服务器,所以可以想办法绕过这个验证码。

既然验证码是在本地生成的,服务器并不知道验证码是多少,所以只要我们提交了格式正确的POST,那么服务器就会默认验证码是正确的,从而返回用户名和密码的验证信息。

而且,验证码错误的话,本地页面会阻止我们提交POST,所以我们可以直接用任意验证码的POST包,直接发给服务器,这样就绕过了本地页面的验证机制,服务器就直接被耍了。

step2:使用burp抓包

企业微信截图_16963259994280.png

step3:设置暴破条件

企业微信截图_16963160633346.png

企业微信截图_16963162259172.png

step4:开始攻击并查看结果

企业微信截图_16963261701551.png

4、token防暴破

Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回 Token 给前端。前端可以在每次请求的时候带上 Token 证明自己的合法地位。

企业微信截图_16963265154166.png

step1:测试并分析

在账号和密码栏中随意输入两次,进行比较

企业微信截图_1696334966824.png

企业微信截图_16963350394833.png 我们可以发现,前端和服务器每次发送的都不一样

step2:已知账号,破解密码,使用burp进行抓包

随机输入一个密码,进行抓包

企业微信截图_16963353392042.png

step3:设置暴破条件

  • 这里将password和token设为高亮,一个password对应一个服务器返回的token,这里将attract type设置为Pitchfork

企业微信截图_16963354499270.png

  • payload1是密码,将对应的payload type设置为simple list,并为payload1设置对应字典

企业微信截图_16963355651051.png

  • payload2是token,根据它的属性,将对应的payload type设置为Recurslve grep
  • 在Payload的可选项设置(Options)中配置Grep规则,然后根据grep去提取数据才能发生攻击

企业微信截图_16963359117806.png

企业微信截图_16963358338719.png

企业微信截图_1696335680676.png step4:开始攻击并查看结果

企业微信截图_16963360464871.png

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

img

因篇幅有限,仅展示部分资料,如果你对网络安全入门感兴趣,需要的话可以在下方

;